Commit c10def0e authored by Maximilian Dolling's avatar Maximilian Dolling
Browse files

Merge branch 'dev' into 'master'

added more license handling

See merge request !65
parents 562906f9 15ada1dc
......@@ -13,7 +13,7 @@ stages:
variables:
DOCKER_DST_IMAGE_NAME: software-quality-assurance
SQA_VERSION: '0.6.0'
SQA_VERSION: '0.7.0'
GIT_SUBMODULE_STRATEGY: recursive
include:
......
......@@ -5,7 +5,7 @@
lint:Python:
stage: lint
image: gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep-dev
image: git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep-dev
before_script:
- pip install pylint
script:
......
......@@ -10,20 +10,8 @@ sqa:dev:
entrypoint: [""]
dependencies:
- test:sqa-dev
before_script:
- mkdir -p ~/.ssh
- chmod 700 ~/.ssh
- echo "$SSH_KNOWN_HOSTS_GITLAB" > ~/.ssh/known_hosts
- chmod 644 ~/.ssh/known_hosts
script:
- eval $(ssh-agent -s)
- echo "$GITLAB_DEPLOY_KEY" | tr -d '\r' | ssh-add -
- git config user.name "GitLab CI:${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}"
- git config user.email "software-quality-assurance@gitext.gfz-potsdam.de"
- sqa --repository_dir "$CI_PROJECT_DIR" run
- git add .
- git commit -m "[AUTOMATIC] generated meta/software-quality-assurance-report.md by gitlab ci"
- git push -o ci.skip "git@${CI_SERVER_HOST}:${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}.git" "HEAD:${CI_COMMIT_REF_NAME}"
- sqa --repository_dir "$CI_PROJECT_DIR" -ol cli run
except:
refs:
- master
......@@ -44,7 +32,7 @@ sqa:production:
- eval $(ssh-agent -s)
- echo "$GITLAB_DEPLOY_KEY" | tr -d '\r' | ssh-add -
- git config user.name "GitLab CI:${CI_PROJECT_NAMESPACE}/${CI_PROJECT_NAME}"
- git config user.email "software-quality-assurance@gitext.gfz-potsdam.de"
- git config user.email "software-quality-assurance@git.gfz-potsdam.de"
- sqa --repository_dir "$CI_PROJECT_DIR" run
- git add .
- git commit -m "[AUTOMATIC] generated meta/software-quality-assurance-report.md by gitlab ci"
......
......@@ -87,3 +87,16 @@ test:docs:
changes:
- "docs/**/*"
- "**/*.md"
test:check-links:
stage: test
image: ruby:2.7.2-slim-buster
before_script:
- gem install awesome_bot
script:
- awesome_bot --allow-redirect --allow-dupe `find . -type d \( -path .sqa -o -path tests/test_project \) -prune -false -o -name "*.md"`
only:
changes:
- "**/*.md"
- ".gitlab-ci.yml"
- ".gitlab/ci/test.gitlab-ci.yml"
......@@ -128,12 +128,8 @@ title = "gitleaks config"
description = "Generic Credential"
regex = '''(?i)(dbpasswd|dbuser|dbname|dbhost|api_key|apikey|secret|key|api|password|user|guid|hostname|pw|auth)(.{0,20})?['|"]([0-9a-zA-Z-_\/+!{}/=]{4,120})['|"]'''
tags = ["key", "API", "generic"]
[[rules.allowlist]]
regex = """key[12]?'?s? ?(in|=|:)? ?[{[]?('ignore'|'license[s1]'|'foo[12]': 'bar[12]'|settings|config|'ignore'|'unknown'|'submodules')"""
[[rules.allowlist]]
regex = """[Aa]uthors"""
[[rules.allowlist]]
regex = """keys.?.?.? .? .?'submodules'"""
[rules.allowlist]
regexes = ["""key[12]?'?s? ?(in|=|:)? ?[{[]?('ignore'|'license[s1]'|'foo[12]': 'bar[12]'|settings|config|'ignore'|'unknown'|'submodules')""", """[Aa]uthors""", """keys.?.?.? .? .?'submodules'"""]
[allowlist]
description = "Allowlisted files"
files = ['''.*gitleaks_config.toml$''', '''.*config.toml$''', '''.*QUALITY.md$''', '''.*software-quality-assurance-report.md$''']
......@@ -17,7 +17,7 @@ You can contribute in many ways:
### Report Bugs
Report bugs as [issue](https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance/-/issues).
Report bugs as [issue](https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/-/issues).
If you are reporting a bug, please include:
......@@ -44,7 +44,7 @@ Whether as part of the official docs or in the docstrings.
### Submit Feedback
The best way to send feedback is to file an issue at https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance/-/issues.
The best way to send feedback is to file an issue at https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/-/issues.
If you are proposing a feature:
......@@ -59,11 +59,11 @@ Ready to contribute? Here's how to set up `Software Quality Assurance` for local
1. Fork the `Software Quality Assurance` repo on GitLab.
2. Clone your fork locally:
```shell
$ git clone git@gitext.gfz-potsdam.de:your_name_here/software-quality-assurance.git
$ git clone git@git.gfz-potsdam.de:your_name_here/software-quality-assurance.git
```
3. Create a branch for local development:
3. Create a branch for local development from the dev branch:
```shell
$ git checkout -b name-of-your-bugfix-or-feature
$ git checkout -b name-of-your-bugfix-or-feature dev
```
Now you can make your changes locally.
4. Commit your changes and push your branch to GitLab:
......@@ -92,5 +92,5 @@ Before you submit a pull request, check that it meets these guidelines:
1. The merge request should include tests.
2. If the merge request adds functionality, the docs should be updated.
3. Check your [merge request](https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance/-/merge_requests) and make sure that the tests pass.
3. Check your [merge request](https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/-/merge_requests) and make sure that the tests pass.
4. All changes need to be compatible with the respective [license](README.md#license).
......@@ -43,7 +43,7 @@
"sha256:01f715cd0ed7a622ec8b32322e715813f7574de531f09b70f6f3b2c10f682425",
"sha256:64e2a6d14de9c8e022cf40539ac8468ba7c4b99550a2b05fc87fd20e392e568f"
],
"markers": "python_full_version >= '3.6.0'",
"markers": "python_version >= '3.6'",
"version": "==2.1.1"
},
"certifi": {
......@@ -70,7 +70,7 @@
"sha256:8f1d055d1c5b793d9355d7368a2f48cbb20c342dabc3f46ebd69e468dcfa2ab9",
"sha256:e6bb2d990d24bc38ce57484a587a187f4237f118c347c87ba030f8321ee5a5c2"
],
"markers": "python_full_version >= '3.6.0'",
"markers": "python_version >= '3.6'",
"version": "==1.1.8"
},
"click": {
......@@ -333,7 +333,7 @@
"sha256:7e112f62e2482d8417bbfa8f7bb715e98841fd15132a46c0a657ceb59302d24d",
"sha256:efda751de15201b395b6d6e64e6ae3b6b03dc502a64c3c908aa5cad14c27eee5"
],
"markers": "python_full_version >= '3.6.0'",
"markers": "python_version >= '3.6'",
"version": "==8.1.2"
}
},
......@@ -347,11 +347,11 @@
},
"astroid": {
"hashes": [
"sha256:6b0ed1af831570e500e2437625979eaa3b36011f66ddfc4ce930128610258ca9",
"sha256:cd80bf957c49765dce6d92c43163ff9d2abc43132ce64d4b1b47717c6d2522df"
"sha256:ad63b8552c70939568966811a088ef0bc880f99a24a00834abd0e3681b514f91",
"sha256:bea3f32799fbb8581f58431c12591bc20ce11cbc90ad82e2ea5717d94f2080d5"
],
"markers": "python_version >= '3.6'",
"version": "==2.5.2"
"version": "==2.5.3"
},
"babel": {
"hashes": [
......@@ -534,11 +534,11 @@
},
"pylint": {
"hashes": [
"sha256:0e21d3b80b96740909d77206d741aa3ce0b06b41be375d92e1f3244a274c1f8a",
"sha256:d09b0b07ba06bcdff463958f53f23df25e740ecd81895f7d2699ec04bbd8dc3b"
"sha256:209d712ec870a0182df034ae19f347e725c1e615b2269519ab58a35b3fcbbe7a",
"sha256:bd38914c7731cdc518634a8d3c5585951302b6e2b6de60fbb3f7a0220e21eeee"
],
"index": "pypi",
"version": "==2.7.2"
"version": "==2.7.4"
},
"pyparsing": {
"hashes": [
......@@ -580,19 +580,19 @@
},
"sphinx": {
"hashes": [
"sha256:3f01732296465648da43dec8fb40dc451ba79eb3e2cc5c6d79005fd98197107d",
"sha256:ce9c228456131bab09a3d7d10ae58474de562a6f79abb3dc811ae401cf8c1abc"
"sha256:19010b7b9fa0dc7756a6e105b2aacd3a80f798af3c25c273be64d7beeb482cb1",
"sha256:2320d4e994a191f4b4be27da514e46b3d6b420f2ff895d064f52415d342461e8"
],
"index": "pypi",
"version": "==3.5.3"
"version": "==3.5.4"
},
"sphinx-rtd-theme": {
"hashes": [
"sha256:eda689eda0c7301a80cf122dad28b1861e5605cbf455558f3775e1e8200e83a5",
"sha256:fa6bebd5ab9a73da8e102509a86f3fcc36dec04a0b52ea80e5a033b2aba00113"
"sha256:32bd3b5d13dc8186d7a42fc816a23d32e83a4827d7d9882948e7b837c232da5a",
"sha256:4a05bdbe8b1446d77a01e20a23ebc6777c74f43237035e76be89699308987d6f"
],
"index": "pypi",
"version": "==0.5.1"
"version": "==0.5.2"
},
"sphinxcontrib-applehelp": {
"hashes": [
......
# Software Quality Report
> **Note:** This report is automatically generated by [Software Quality Assurance](https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance)
> **Note:** This report is automatically generated by [Software Quality Assurance](https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance)
## Table of Content
......@@ -18,11 +18,11 @@
**Software Location:** [git](git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance)
**Last Commit:** 481e342056656d48c6e81c2eaf3fdca2a5227cad
**Last Commit:** 72ddcf4d10994c04a08309efddd016ac68840cb4
**Report Time:** 29/03/2021 14:43:54 UTC
**Report Time:** 15/04/2021 12:46:23 UTC
**Report Version:** 0.6.0
**Report Version:** 0.7.0
## Completed Services
......@@ -36,18 +36,16 @@
> **Description: Prints the result of [gitleaks](https://github.com/zricethezav/gitleaks)**
**gitleaks had an error and exited with status code 256.**
**gitleaks log**
Usage: gitleaks [OPTIONS]Application Options: -v, --verbose Show verbose output from scan -q, --quiet Sets log level to error and only output leaks, one json object per line -r, --repo-url= Repository URL -p, --path= Path to directory (repo if contains .git) or file -c, --config-path= Path to config --repo-config-path= Path to gitleaks config relative to repo root --clone-path= Path to clone repo to disk --version Version number --username= Username for git repo --password= Password for git repo --access-token= Access token for git repo --threads= Maximum number of threads gitleaks spawns --ssh-key= Path to ssh key used for auth --unstaged Run gitleaks on unstaged code --branch= Branch to scan --redact Redact secrets from log messages and leaks --debug Log debug messages --no-git Treat git repos as plain directories and scan those files --leaks-exit-code= Exit code when leaks have been encountered (default: 1) --append-repo-config Append the provided or default config with the repo config. --additional-config= Path to an additional gitleaks config to append with an existing config. Can be used with --append-repo-config to append up to three configurations -o, --report= Report output path -f, --format= JSON, CSV, SARIF (default: json) --files-at-commit= Sha of commit to scan all files at commit --commit= Sha of commit to scan or "latest" to scan the last commit of the repository --commits= Comma separated list of a commits to scan --commits-file= Path to file of line separated list of commits to scan --commit-from= Commit to start scan from --commit-to= Commit to stop scan --commit-since= Scan commits more recent than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format. --commit-until= Scan commits older than a specific date. Ex: '2006-01-02' or '2006-01-02T15:04:05-0700' format. --depth= Number of commits to scanHelp Options: -h, --help Show this help message
**No leaks detected.**
### List Authors
> **Description: Lists all people that committed to this config.**
* [Daniel Eggert](mailto:eggi@gfz-potsdam.de)
* [GitLab CI:hifis/software-services/fair/ci-services](mailto:ci-services@gitext.gfz-potsdam.de)
* [GitLab CI:id2/software/services/fair/software-quality-assurance](mailto:software-quality-assurance@gitext.gfz-potsdam.de)
* [GitLab CI:software/services/fair/ci-services](mailto:ci-services@gitext.gfz-potsdam.de)
* [GitLab CI:software/services/fair/software-quality-assurance](mailto:software-quality-assurance@gitext.gfz-potsdam.de)
* [Hannes Fuchs](mailto:hannes.fuchs@gfz-potsdam.de)
......@@ -60,11 +58,11 @@ Usage: gitleaks [OPTIONS]Application Options: -v, --verbose Show v
|Language|Percentage|
|---|---|
|Python|92.74|
|Shell|4.24|
|Dockerfile|1.60|
|HTML|1.34|
|Ruby|0.08|
|Python|93.22|
|Shell|4.04|
|Dockerfile|1.47|
|HTML|1.20|
|Ruby|0.07|
### List Used Licenses
......@@ -88,7 +86,7 @@ Usage: gitleaks [OPTIONS]Application Options: -v, --verbose Show v
|MIT License|Python / bracex / 2.1.1 <br> Python / wcmatch / 8.1.2|
|MPL-2.0|Python / certifi / 2020.12.5|
|PSF License|Python / contextlib2 / 0.6.0.post1|
|Python-2.0|Python / abc / base lib <br> Python / datetime / base lib <br> Python / json / base lib <br> Python / os / base lib <br> Python / pathlib / base lib <br> Python / re / base lib <br> Python / shutil / base lib <br> Python / subprocess / base lib <br> Python / time / base lib|
|Python-2.0|Python / abc / base lib <br> Python / datetime / base lib <br> Python / json / base lib <br> Python / os / base lib <br> Python / pathlib / base lib <br> Python / re / base lib <br> Python / shutil / base lib <br> Python / subprocess / base lib <br> Python / time / base lib <br> Python / typing / base lib|
|apache-2.0|Python / license-expression / 1.2|
......@@ -96,6 +94,14 @@ Usage: gitleaks [OPTIONS]Application Options: -v, --verbose Show v
> **Description: Prints the result of the [reuse](https://reuse.software/spec/) linter.**
#### MISSING COPYRIGHT AND LICENSING INFORMATION
The following files have no copyright and licensing information:
* /repo/tests/test_project/QUALITY.md
* /repo/tests/test_project/meta/check_credentials.json
* /repo/tests/test_project/test_report.md
#### SUMMARY
* Bad licenses:
......@@ -105,8 +111,8 @@ Usage: gitleaks [OPTIONS]Application Options: -v, --verbose Show v
* Unused licenses:
* Used licenses: CC0-1.0, GPL-3.0-or-later
* Read errors: 0
* Files with copyright information: 72 / 72
* Files with license information: 72 / 72
* Files with copyright information: 92 / 95
* Files with license information: 92 / 95
Congratulations! Your project is compliant with version 3.0 of the REUSE Specification :-)
Unfortunately, your project is not compliant with version 3.0 of the REUSE Specification :-(
......@@ -37,7 +37,7 @@ The software you want to run the services on **must** be a [git](https://git-scm
## Documentation
You can find the documentation [here](https://id2.git-pages.gfz-potsdam.de/software/services/fair/software-quality-assurance/).
You can find the documentation [here](https://id2.git-pages.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/).
In case you received a local copy of the project, you can build and view the documentation like this:
```shell script
cd docs
......
#
# These requirements were autogenerated by pipenv
# To regenerate from the project's Pipfile, run:
#
# pipenv lock --requirements
#
-i https://pypi.org/simple
attrs==20.3.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
binaryornot==0.4.4
boolean.py==3.8
bracex==2.1.1; python_full_version >= '3.6.0'
certifi==2020.12.5
chardet==4.0.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
cli-exit-tools==1.1.8; python_full_version >= '3.6.0'
click==7.1.2
contextlib2==0.6.0.post1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
gitdb==4.0.7; python_version >= '3.4'
gitpython==3.1.14
idna==2.10; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
igittigitt==2.0.4
jinja2==2.11.3; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4'
license-expression==1.2
markupsafe==1.1.1; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
orderedset==2.0.3
python-debian==0.1.39
pyyaml==5.4.1
requests==2.25.1
reuse==0.12.1
schema==0.7.4
six==1.15.0; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3'
smmap==4.0.0; python_version >= '3.5'
spdx-license-list==0.5.2
stdlib-list==0.8.0
tabulate==0.8.9
toml==0.10.2
urllib3==1.26.4; python_version >= '2.7' and python_version not in '3.0, 3.1, 3.2, 3.3, 3.4' and python_version < '4'
wcmatch==8.1.2; python_full_version >= '3.6.0'
SPDX-FileCopyrightText: 2020 Helmholtz Centre Potsdam - GFZ German Research Centre for Geosciences, Germany (https://www.gfz-potsdam.de/)
SPDX-FileCopyrightText: 2021 Helmholtz Centre Potsdam - GFZ German Research Centre for Geosciences, Germany (https://www.gfz-potsdam.de/)
SPDX-License-Identifier: CC0-1.0
\ No newline at end of file
......@@ -22,7 +22,7 @@
# You can find a copy of the license in the LICENSES folder.
# If not, see <http://www.gnu.org/licenses/>.
FROM gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep-dev
FROM git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep-dev
LABEL maintainer="Maximilian Dolling <mdolling@gfz-potsdam.de>"
......
......@@ -22,7 +22,7 @@
# You can find a copy of the license in the LICENSES folder.
# If not, see <http://www.gnu.org/licenses/>.
FROM gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep
FROM git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest-dep
LABEL maintainer="Maximilian Dolling <mdolling@gfz-potsdam.de>"
......
......@@ -33,18 +33,23 @@ RUN apk upgrade
# copy dependecies
COPY ./build/dependencies /dependencies
COPY ./Pipfile /dependencies
COPY ./Pipfile.lock /dependencies
WORKDIR /dependencies
# install OS dependencies
RUN apk add --update --no-cache $(cat /dependencies/dependencies_OS.txt)
RUN apk add --update --no-cache $(cat dependencies_OS.txt)
# install ruby dependencies
RUN bundle install --gemfile=/dependencies/Gemfile
# install python dependencies
RUN pip install -r /dependencies/requirements.txt
RUN bundle install
# install go modules
RUN /dependencies/install_go_dependencies.sh
RUN ./install_go_dependencies.sh
# install python dependencies
RUN pip install pipenv
RUN pipenv install --system --deploy
# cleanup
RUN rm -rf /dependencies
......@@ -37,8 +37,8 @@ Structure of the Documentation
pages/AUTHORS.md
pages/CONTRIBUTING.md
pages/CHANGELOG.md
SQA report <https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance/-/blob/master/QUALITY.md>
Source Code <https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance>
SQA report <https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/-/blob/master/QUALITY.md>
Source Code <https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance>
.. _RSEs: https://de-rse.org/en/
.. _git: https://git-scm.com/
......
......@@ -54,7 +54,7 @@ The same reason prevents it currently from being hosted on PyPI.
Please make sure, all requirements are met.
```shell script
git clone https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance.git
git clone https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance.git
cd software-quality-assurance/src
python setup.py install
```
......
......@@ -97,27 +97,39 @@ It generates a yaml file, which contains all detected languages and the bytes of
> **Note:** config optional
The service loads the output from `list-used-languages`, which will also run before the actual service.
It takes every files from the repository and assigns them to a detected language.
It takes every file from the repository and assigns them to a detected language.
Afterwards it parses all files for their imports and requests their license from a pkg manager API.
It is required, that all files, that are handled (see below), are valid and contain no errors.
### implemented languages
#### Python
Currently parses the following files:
Currently, parses the following files:
* .py
* .py3
* requirements.txt
* Pipfile
* Pipfile.lock
* pyproject.toml (poetry settings)
* poetry.lock
Goes through the files line by line and searches for imports or libraries.
Cuts the line down and generates library:version pairs.
Afterwards requests the license from the PyPI API.
It will only handle libraries with specified versions '=='.
All other specifications (<>!~) are not supported.
It will only handle libraries with specified versions (`==`).
All other specifications (`<`,`>`,`!`,`~`) are not supported.
All packages that are not hosted on PyPI are not handled.
Local packages can be excluded in the configuration.
#### all others
#### Node
Currently, parses the following files:
* package.json
* package-lock.json
return will not be recognized
It will only handle libraries with specified versions (`x.y.z`).
All other specifications (`~`,`^`,`1.x`) are not supported.
All packages that are not hosted on NPM are not handled.
Local packages can be excluded in the configuration.
......@@ -82,7 +82,7 @@ stages:
sqa:
stage: sqa
image:
name: "gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest"
name: "git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest"
entrypoint: [""]
script:
- sqa --repository_dir "$CI_PROJECT_DIR" run
......@@ -131,9 +131,9 @@ ssh-keyscan -t rsa [GITLAB_DOMAIN]]
# example
ssh-keyscan -t rsa gitext.gfz-potsdam.de
# gitext.gfz-potsdam.de:22 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
gitext.gfz-potsdam.de ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsiq5txhABcG9oePf47SCd+w/tfSs6NWKaMRd2BfBi9DGORQX4wwV4CYvSJbMfJvQO5SMGwhnEAXe0bWihC2V8X7lzcePrpjfP+uH2lmipcFbV9g3iQpM7Fusr96IV65v/qQ6HE4+KkHJLR1vEKj1AOaVgDww7CHhVAHCkvqcSwwtfOjBbqyfQ2Su7O6UNzs1ecQcIXnQNO8ebzimv3c8mKdo9j8i5eiWVqzRivmi/R3XIIc2T695mTLyxUplqfyvZpDL90F9VEjr/3HM9/3dASbonaTH8SoMRCxOy8Fpz0Va1MdpSor0uoemQjbu8aZzGB0+tsE5eWjuFaZib8QDF
ssh-keyscan -t rsa git.gfz-potsdam.de
# git.gfz-potsdam.de:22 SSH-2.0-OpenSSH_7.6p1 Ubuntu-4ubuntu0.3
git.gfz-potsdam.de ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCsiq5txhABcG9oePf47SCd+w/tfSs6NWKaMRd2BfBi9DGORQX4wwV4CYvSJbMfJvQO5SMGwhnEAXe0bWihC2V8X7lzcePrpjfP+uH2lmipcFbV9g3iQpM7Fusr96IV65v/qQ6HE4+KkHJLR1vEKj1AOaVgDww7CHhVAHCkvqcSwwtfOjBbqyfQ2Su7O6UNzs1ecQcIXnQNO8ebzimv3c8mKdo9j8i5eiWVqzRivmi/R3XIIc2T695mTLyxUplqfyvZpDL90F9VEjr/3HM9/3dASbonaTH8SoMRCxOy8Fpz0Va1MdpSor0uoemQjbu8aZzGB0+tsE5eWjuFaZib8QDF
```
Now open the GitLab web-interface and navigate to `Settings > CI/CD > Variables` from from the page of your repository.
......@@ -164,7 +164,7 @@ stages:
sqa:
stage: sqa
image:
name: "gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest"
name: "git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest"
entrypoint: [""]
before_script:
- mkdir -p ~/.ssh
......@@ -193,7 +193,7 @@ The content of user.email must be identical with what was entered in 5.2.1)
### Examples
An example of both variants applied at the same time can be found [here](https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance/-/blob/master/.gitlab/ci/sqa.gitlab-ci.yml)
An example of both variants applied at the same time can be found [here](https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance/-/blob/master/.gitlab/ci/sqa.gitlab-ci.yml)
## Local
......@@ -234,7 +234,7 @@ The general syntax looks like the following:
```bash
docker run -v [/ABSOLUTE/PATH/TO/REPO]:/repo \
-u $(id -u ${USER}):$(id -g ${USER}) \
gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
sqa [MODIFIER] run [SERVICE]
```
......@@ -246,7 +246,7 @@ This binds the directory of your project to the docker container.
This makes the user/group of the container the same as the host system ones.
**`gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest`**
**`git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest`**
This is the actual path to the image:image-version.
......@@ -256,7 +256,7 @@ Here the service (and modifier) to run is specified.
To get a list of available services use:
```bash
docker run gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
docker run git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
sqa run --help
```
......@@ -266,12 +266,12 @@ Run all services for the project within the directory `~/Projects/volcano_detect
```bash
docker run -v ~/Projects/volcano_detection:/repo \
-u $(id -u ${USER}):$(id -g ${USER}) \
gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
sqa run
```
Get the version of the Software Quality Assurance.
```bash
docker run gitext.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
docker run git.gfz-potsdam.de:5000/id2/software/services/fair/software-quality-assurance/software-quality-assurance:latest \
sqa --version
```
......
......@@ -61,7 +61,7 @@ setup(
long_description=read_file("../README.md"),
long_description_content_type="text/markdown",
license="GPL-3.0-or-later",
url="https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance",
url="https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance",
packages=find_packages(exclude=["tests/.*"]),
package_data={
"sqa": [
......@@ -78,5 +78,5 @@ setup(
"License :: OSI Approved :: GPL-3.0-or-later",
"Operating System :: OS Independent",
],
python_requires=">=3.8",
python_requires=">=3.9",
)
......@@ -84,7 +84,7 @@ def main(
Needs a directory to run services on.
The directory needs to be a git repository_config.
Visit 'https://gitext.gfz-potsdam.de/software/services/fair/software-quality-assurance' for more help.
Visit 'https://git.gfz-potsdam.de/id2/software/services/fair/software-quality-assurance' for more help.
"""
if repository_dir[-1:] == "/":
repository_dir = repository_dir[:-1]
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment