action
GH action to check dependency licence issues using ort
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.3%) to scientific vocabulary
Keywords from Contributors
Repository
GH action to check dependency licence issues using ort
Basic Info
- Host: GitHub
- Owner: tortellini-tools
- License: apache-2.0
- Language: TypeScript
- Default Branch: main
- Homepage: https://github.com/marketplace/actions/tortellini-action
- Size: 1.38 MB
Statistics
- Stars: 3
- Watchers: 5
- Forks: 6
- Open Issues: 38
- Releases: 3
Metadata Files
README.dev.md
Developer documentation
This action is written in Typescript and makes use of the Github @actions packages
The underlining design can be found in DESIGN.md.
Requirements
This tool relies on the availability of Node.js and Docker.
Please verify that you have Node.js and the related package manager npm, and docker available on your
system. Make sure that the version of Node.js is at least 12.
bash
$ node --version
v14.17.0
$ npm --version
6.14.13
$ docker --version
Docker version 20.10.6, build 370c289
Node.js and npm can be downloaded in one package from nodejs.org. And here are
instructions for upgrading Node.js.
Install the dependencies
bash
$ npm install
Build
Build the typescript and package it for distribution
bash
$ npm run build && npm run package
Run unit test
The tests are stored in the directory __tests__ and are written using
jestjs.
Run the tests :heavycheckmark:
```bash $ npm test
PASS ./index.test.js ✓ throws invalid number (3ms) ✓ wait 500 ms (504ms) ✓ test runs (95ms)
... ```
To get information about the test coverage, run the tests with
coverage npm test -- --coverage and
examine the file coverage/lcov-report/index.html
Linting
The code in the src directory can be linted with:
bash
npm run lint
Formatting
Some of the linting error can be fixed with formatting:
bash
npm run format
Run the analysis
On the current repository
The tool will analyze the license dependencies in current Github
repository and store reports of the analyses in the .tortellini/out/
directory.
shell
export INPUT_REPOSITORIES=
export INPUT_CURATIONS=''
export INPUT_CLASSIFICATIONS=https://github.com/NLeSC/tortellini-on-rsd/raw/main/config/license-classifications.yml
export INPUT_RULES=https://github.com/NLeSC/tortellini-on-rsd/raw/main/config/rules.kts
npm install
npm run build
npm run package
node dist/index.js
On other repositories
You can also analyze other repositories on Github by storing their addresses in a file and running node on the file, e.g.:
shell
echo 'https://github.com/tortellini-tools/action' > urls.txt
echo 'https://github.com/fair-software/howfairis' >> urls.txt
The analysis expects a few environment variables. Here are their names and suggested values:
export INPUT_REPOSITORIES=urls.txt
export INPUT_CURATIONS=''
export INPUT_CLASSIFICATIONS=https://github.com/NLeSC/tortellini-on-rsd/raw/main/config/license-classifications.yml
export INPUT_RULES=https://github.com/NLeSC/tortellini-on-rsd/raw/main/config/rules.kts
sudo rm -r .tortellini
mkdir .tortellini
node dist/index.js
The analyses will be stored in the directories
.tortellini/out/<owner>/<repository>/ .
How to create a release
- Update the citation metadata in
CITATION.cff. Afterwards, follow the instructions from thecffconvertworkfow to sync the information in.zenodo.jsonwith that inCITATION.cff Actions are run from GitHub repos so we need to generate the Javascript files in the
distfolder and push the results:bash $ cd $(mktemp --directory --tmpdir tortellini-prep-release.XXXXXX) $ git clone https://github.com/tortellini-tools/action . $ npm install $ npm run all $ git add dist $ git commit --message "prod dependencies" $ git push origin mainNext, check if the workflows of the lastest commit on the main branch are green on the action page.
Create a release on the Github page via Create a new release.
On the new release page, for
Tag versionusevand the next version number, for examplev3. See the versioning documentation for more information.Make sure that usage workflows are using the new version tag and the examples in README.md are updated.
Your action is now published! :rocket:
Check if the new version has been published on the Github Marketplace.
You can now validate the action by going to
this workflow and this workflow
and then clicking on the button Run workflow.
Citation (CITATION.cff)
# YAML 1.2
---
abstract: "GitHub action to check whether any licensing issues exist for given software."
authors:
-
affiliation: "Netherlands eScience Center"
family-names: Verhoeven
given-names: Stefan
orcid: "https://orcid.org/0000-0002-5821-2060"
-
affiliation: "Netherlands eScience Center"
family-names: Diblen
given-names: Faruk
orcid: "https://orcid.org/0000-0002-0989-929X"
-
affiliation: "Netherlands eScience Center"
family-names: Spaaks
given-names: "Jurriaan H."
orcid: "https://orcid.org/0000-0002-7064-4069"
-
affiliation: "Netherlands eScience Center"
family-names: "Tjong Kim Sang"
given-names: Erik
orcid: "https://orcid.org/0000-0002-8431-081X"
cff-version: "1.1.0"
date-released: 2021-06-15
keywords:
- "software license"
- ort
- "oss review toolkit"
- legal
license: "Apache-2.0"
message: "If you use this software, please cite it using these metadata."
repository-code: "https://github.com/tortellini-tools/action"
title: tortellini
version: v3
...
GitHub Events
Total
Last Year
Committers
Last synced: 9 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Jurriaan H. Spaaks | j****s@e****l | 156 |
| Faruk D | f****n@e****l | 124 |
| Stefan Verhoeven | s****n@g****m | 85 |
| Erik Tjong Kim Sang | e****t@x****l | 27 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 10 months ago
All Time
- Total issues: 108
- Total pull requests: 61
- Average time to close issues: 12 days
- Average time to close pull requests: 1 day
- Total issue authors: 5
- Total pull request authors: 5
- Average comments per issue: 2.44
- Average comments per pull request: 0.69
- Merged pull requests: 44
- Bot issues: 0
- Bot pull requests: 17
Past Year
- Issues: 0
- Pull requests: 0
- Average time to close issues: N/A
- Average time to close pull requests: N/A
- Issue authors: 0
- Pull request authors: 0
- Average comments per issue: 0
- Average comments per pull request: 0
- Merged pull requests: 0
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- sverhoeven (44)
- jspaaks (8)
- fdiblen (6)
- eriktks (3)
- LourensVeen (2)
Pull Request Authors
- dependabot[bot] (10)
- fdiblen (9)
- sverhoeven (8)
- jspaaks (8)
- eriktks (2)
Top Labels
Issue Labels
Pull Request Labels
Dependencies
- 619 dependencies
- @types/atob ^2.1.2 development
- @types/jest ^26.0.15 development
- @types/node ^15.12.2 development
- @types/node-fetch ^2.5.10 development
- @types/pako ^1.0.1 development
- @typescript-eslint/parser ^4.8.1 development
- @vercel/ncc ^0.28.5 development
- eslint ^7.17.0 development
- eslint-plugin-github ^4.1.1 development
- eslint-plugin-jest ^24.1.3 development
- jest ^26.6.3 development
- jest-circus ^26.6.3 development
- js-yaml ^4.1.0 development
- prettier 2.3.0 development
- ts-jest ^26.4.4 development
- typescript ^4.1.3 development
- @actions/core ^1.3.0
- @actions/exec ^1.0.4
- @actions/io ^1.1.0
- atob ^2.1.2
- node-fetch ^2.6.1
- node-html-parser ^3.3.5
- pako ^2.0.3