summaryrefslogtreecommitdiff
path: root/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'README.md')
-rw-r--r--README.md60
1 files changed, 26 insertions, 34 deletions
diff --git a/README.md b/README.md
index 2d48099..72e6473 100644
--- a/README.md
+++ b/README.md
@@ -4,7 +4,7 @@
[![coverage report](https://gitlab.com/gitlab-org/security-products/license-management/badges/master/coverage.svg)](https://gitlab.com/gitlab-org/security-products/license-management/commits/master)
GitLab tool for detecting licenses of the dependencies used by the provided source.
-It is currently based on [License Finder](https://gitlab.com/gitlab-org/security-products/license-management)
+It is currently based on [License Finder][license_finder]
only, but this may change in the future.
## How to use
@@ -25,48 +25,41 @@ only, but this may change in the future.
### Running the application
-License Management is a Docker image, you can build it like any Docker image like so in the
-project root:
+License Management is a Docker image. You can build it like this from the project root:
```sh
-docker build -t license-management .
+$ ./bin/docker-build
```
You can then run License Management on some target directory:
```sh
-docker run --rm --volume "/path/to/my/project":/code license-management analyze /code
+$ docker run --rm --volume "/path/to/my/project":/code license-management analyze /code
```
-You can run the tests from your host machine using the following command:
+You can run the tests from inside a docker container:
```sh
-./bin/test
-```
-
-It is much more efficient to run the tests from inside the docker container:
-
-```sh
-./bin/docker-build
-./bin/docker-shell
-cd /opt/license-management/
-./bin/test
+$ ./bin/docker-build
+$ ./bin/docker-shell
+$ cd /opt/license-management/
+$ ./bin/test
```
If you need to debug any specific issues you can do this from within the docker container by
following these steps:
```sh
-./bin/docker-build
-./bin/docker-shell
-cd /opt/license-management/
-enable_dev_mode
-bundle open license_finder
+$ ./bin/docker-build
+$ ./bin/docker-shell
+$ cd /opt/license-management/
+$ enable_dev_mode
+$ bundle open license_finder
```
The `docker-shell` script will mount the current project as a volume into `/opt/license-management`.
-This allows you edit code from your host machine using your preferred editor and
-see the affects of those changes from within the running docker container.
+This allows you to edit code from your host machine using your preferred editor and
+see the affect of those changes from within the running docker container.
### Updating the SPDX index
@@ -119,12 +112,6 @@ The License Management tool can be customized with environments variables for so
Inject the required environment variables to the docker command using the [`--env` option flag](https://docs.docker.com/engine/reference/commandline/run/#set-environment-variables--e---env---env-file)
or its shorthand form (`--env MY_SETTING_VAR`) if the configuration comes from an external environment.
-
-*Caution:* if you supply the `MAVEN_CLI_OPTS` for a Maven project, don't forget to append `-DskipTests` to save time by skipping the test suite.
-
-*Tip:* in case you still need to run tests during license management check, supply `MAVEN_CLI_OPTS=-DskipTests=false`
-to the docker command.
-
## Versioning and release process
1. Create a new entry in the `.gitlab/release.yml` file for the new version to release.
@@ -147,19 +134,24 @@ Please check the [Release Process documentation](https://gitlab.com/gitlab-org/s
## Upgrading to the latest version of LicenseFinder
-1. Check for the latest version of `LicenseFinder` at [https://rubygems.org/gems/license_finder](https://rubygems.org/gems/license_finder)
-1. Check the version of the `license_finder` gem that is currently being used in the [`Gemfile.lock`](https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/Gemfile.lock)
+1. Check for the latest version of `LicenseFinder` at [https://rubygems.org/gems/license_finder][license_finder]
+1. Check the version of the `license_finder` gem that is currently being used in the [`Gemfile.lock`][gemfile_lock]
1. If an update is available, create a new branch
-1. Bump the license management version in [CHANGELOG.md](https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/CHANGELOG.md) and in [version.rb](https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/lib/license/management/version.rb)
-1. Update the `license_finder` version constraint in the [gemspec](https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/license-management.gemspec).
+1. Bump the license management version in [CHANGELOG.md][changelog] and in [version.rb][version_rb]
+1. Update the `license_finder` version constraint in the [gemspec][gemspec]
1. Run `bundle update license_finder`
1. Test the changes locally using the `bin/test` script.
1. Submit a merge request.
-
# Contributing
If you want to help, read the [contribution guidelines](CONTRIBUTING.md).
If an unknown license is detected, please consider updating the mapping defined
in [normalized-licenses.yml](https://gitlab.com/gitlab-org/security-products/license-management/blob/master/normalized-licenses.yml). A mapping can be for a detected name or url and must correspond to an SDPX identifier found in [spdx-licenses.json](https://gitlab.com/gitlab-org/security-products/license-management/blob/master/spdx-licenses.json).
+
+[license_finder]: https://rubygems.org/gems/license_finder
+[changelog]: https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/CHANGELOG.md
+[version_rb]: https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/lib/license/management/version.rb
+[gemspec]: https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/license-management.gemspec
+[gemfile_lock]: https://gitlab.com/gitlab-org/security-products/license-management/-/blob/master/Gemfile.lock