/actions

GitHub Actions for Greenbone projects

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Greenbone Logo

Greenbone GitHub Actions

Repository that contains a collection of GitHub Actions for Greenbone projects

Language specific Actions

We offer several actions for linting, formatting, building and testing packages/modules/projects in different programming languages

Python

JavaScript

- name: Install JavaScript and the project [npm]
  uses: greenbone/actions/install-npm@v3
  with:
    version: 3.9
    token: ${{ secrets.FOO_BAR }}
- name: Install and check Lint and Format in JavaScript Projects [npm]
  uses: greenbone/actions/lint-npm@v3
  with:
    version: 3.9
    token: ${{ secrets.FOO_BAR }}
- name: Install, Build and Test JavaScript Projects [npm]
  uses: greenbone/actions/test-npm@v3
  with:
    version: 3.9
    token: ${{ secrets.FOO_BAR }}
- name: Run coverage for javascript
  uses: greenbone/actions/coverage-js@v3

GoLang

- name: Check Lint and Format in GoLang Projects
  uses: greenbone/actions/lint-golang@v3
  with:
    version: "1.18"
    generate: go generate # mocks, docs, etc
    golangci-lint: v1.50 # specify golangci-lint version

CLang

- name: upload documentation coverage to codecov.io for C Lang repository
  uses: greenbone/actions/doc-coverage-clang@v3

Language independent Actions

Branch protection

Other useful actions

Update license header supporting many different filetypes

- name: Run update header
  uses: greenbone/actions/update-header@v3
  with:
    github-user: ${{ secrets.FOO_BAR }}
    github-user-mail: foo@bar.baz
    github-user-token: bar
    directories: foo tests
    target: main

SHA256 file or GPG signature generation

- name: Create a sha256sums file for the foo directory
  uses: greenbone/actions/hashsums@v3
  with:
    directory: ./foo

- name: Create a GPG signature
  uses: greenbone/actions/signature@v3
  with:
    gpg-key: ${{ secrets.FOO_BAR }}
    gpg-passphrase: ${{ secrets.FOO_BAZ }}
    gpg-fingerprint: ${{ secrets.BAR_BAZ }}
    file: ./foo/bar

Support

For any question on the usage of the Greenbone actions please use the Greenbone Community Forum. If you found a problem with the software, please create an issue on GitHub.

Maintainer

This project is maintained by Greenbone AG.

License

Copyright (C) 2020-2023 Greenbone AG

Licensed under the GNU General Public License v3.0 or later.