Skip to content
This repository has been archived by the owner on Jul 25, 2018. It is now read-only.
LinusschTU edited this page Mar 8, 2018 · 34 revisions

Welcome to the sw360portal wiki!

Documentation

  1. For development, please see the README.md file of the project first.
  2. Check the pages on the right widget of pages. Not every page there has a link on this page!
  3. See the sections below

Naming Policies for this Wiki

Please start every page with a prefix

  1. Admin: for setting up and configure and maintain
  2. Dev: All topics for developers
  3. User: topics suitable for admins and end users

Using sw360

For using the sw360 as a user, please see the following basic workflows:

Particular Use Cases

Explaining how it works

  1. Find information about the role and access model
  2. If you are interested in the concept about moderation requests, read the documentation here.
  3. Explaining fields and terms

Particular Functionality

  1. Technical notes about entering the country codes

Deployment: how to install and setup sw360

In order to install sw360, you can choose between the following ways:

  • Use the Vagrant-based installation. Please refer to the sw360 vagrant project and the included Readme file. Basic prerequisites are
    • VirtualBox
    • Vagrant
    • Presumeably a git client
  • You could install the sw360portal project natively on the machine. This will require more work in order to install the prerequisites. The above mentioned vagrant project documents very precisely what to do in order to install the sw360portal.
  • Checkout the docker suite sw360chores and run a docker-based deployment.
  • Checkout the docker suite sw360chores and generate a pre-built container where you can deploy the *.war files of sw360portal (both frontend and backend)

Portal deployment: next steps

Once the vagrant deployment is ready, a couple of additional steps need to be applied:

  1. Setup liferay / sw360
  2. Setup of connection with Fossology
  3. Setup Secure Deployment
  4. More information on how to user sw360vagrant on Windows

Portal deployment: adminstration issues

After installing sw360portal more topics may include:

  1. How to export data and import it to a new instance
  2. How to migrate an existing sw360portal to a new instance
  3. Using costco to modify the couchdb database
  4. Adding more rights to sw360 admin role, so it can change other user's roles
  5. sw360.properties explained

Architecture documentation

sw360 is a server application using Java servlets. It did some faint steps towards micro services (ie. one maintaining licenses, another for vulnerabilities), the frontend is a portlet applications using good old JSPs.

  1. Introduction and Scope
  2. High Level View
  3. Architecture Topics

Developing for sw360portal

The sw360portal is Java-based application consisting of two main parts:

  1. A Liferay/based front end application that allows users to work with sw360
  2. A Java-based servlet offering Thrift interfaces that allows the Liferay part and other applications to manage and store data
  3. In the backend, couchdb is used for storing project, component, release and license information as well as attachments.

Contributing: Submitting Issues

Please report issues to the issue tracker, but please keep also in mind that someone else has to read them! Issues should include:

  • What you intended to do
  • What did you observe
  • Why do you think it is wrong
  • Screenshots of what you have observed presumably gone wrong or link to pages were another person can follow
  • Version where you have observed this.
  • Common written English and use of line breaks!!! Use the preview function!

Please refer to the following pages:

Development Workflow

As basic introduction, the dev ops works as following:

  1. We are issue-based, please do not hesitate to create issues - also for questions (and set the issue tag)
  2. The issues are organised by milestones which do not represent releases anymore. Milestone are meant to be useful packages of work done
  3. We use the waffle board in order to organize our work
  4. Contributions are made through pull requests
  5. We do conversations directly on issues and pull requests

How to get into the sw360 development

  1. How to write a new portlet
  2. Adding a new backend service
  3. Changing the data model
  4. Infrastructure overview
  5. Migrating to Javascript modules

Developer Operations

  1. Definiton of done and code style
  2. Creating a sw360 release
  3. Brief notes on the jgiven testing
  4. For help with problems, you might want to check that

Particular topics and technical notes

  1. Filtering in portlets
  2. The FOSSology integration
  3. How moderation requests work
  4. Roles and access rights
  5. Attachment Types Description
Clone this wiki locally