{"id":21417345,"url":"https://github.com/staffbase/gha-workflows","last_synced_at":"2026-02-11T11:06:01.099Z","repository":{"id":36998081,"uuid":"467032485","full_name":"Staffbase/gha-workflows","owner":"Staffbase","description":"Repository to manage all reusable workflows","archived":false,"fork":false,"pushed_at":"2025-07-04T06:36:40.000Z","size":599,"stargazers_count":9,"open_issues_count":1,"forks_count":0,"subscribers_count":21,"default_branch":"main","last_synced_at":"2025-07-06T20:42:23.459Z","etag":null,"topics":["actions","github-actions","github-workflows","reusable-workflows"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Staffbase.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2022-03-07T09:46:15.000Z","updated_at":"2025-07-04T06:36:42.000Z","dependencies_parsed_at":"2023-02-19T06:16:19.487Z","dependency_job_id":"e88ffa75-8855-4b18-93cc-593a5bf06080","html_url":"https://github.com/Staffbase/gha-workflows","commit_stats":null,"previous_names":[],"tags_count":64,"template":false,"template_full_name":null,"purl":"pkg:github/Staffbase/gha-workflows","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Staffbase%2Fgha-workflows","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Staffbase%2Fgha-workflows/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Staffbase%2Fgha-workflows/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Staffbase%2Fgha-workflows/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Staffbase","download_url":"https://codeload.github.com/Staffbase/gha-workflows/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Staffbase%2Fgha-workflows/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":265240411,"owners_count":23733017,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["actions","github-actions","github-workflows","reusable-workflows"],"created_at":"2024-11-22T19:14:42.837Z","updated_at":"2026-02-11T11:06:01.089Z","avatar_url":"https://github.com/Staffbase.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":"# Reusable Workflows from the Enthusiasts 🎉\n\nThe repository contains all general workflows which can be used for every workflow in another repository.\nIf you want to have more information you can take a look at the [GitHub documentation][reusable-workflows].\n\nIf you want to use a template workflow you can copy the following template and adapt it to your specific use case.\nYou can find all possible template workflows in the directory `.github/workflows` with the name `template_*.yml`.\n\n```yml\nname: \u003cyour name\u003e\n\non: ...\n\njobs:\n  \u003caction name\u003e:\n    uses: Staffbase/gha-workflows/.github/workflows/template_*.yml@v10.0.0\n    with: ...\n```\n\n## Example Configurations 🔧\n\nIn this section you can find examples of how to use template workflows. For more information, please take a look at the templates.\n\n### Auto-Merge Dependabot\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to auto-merge a dependabot PR with minor and patch updates.\u003c/summary\u003e\n\nThe action is called by creating a PR. It is necessary that the repository is enabled for auto-merge.\nAfterward the PR will be merged with the help of the merge queue if all required conditions of the repository are fulfilled.\n\n⚠️ You can also force a merge of a PR. This means that the PR will immediately be merged.\nIf you want to enable the force merge, make sure that the app can bypass any protection rules.\n\n```yml\nname: Enable Dependabot Auto-Merge\n\non:\n  pull_request:\n    types: [opened]\n\njobs:\n  dependabot:\n    uses: Staffbase/gha-workflows/.github/workflows/template_automerge_dependabot.yml@v10.0.0\n    with:\n      # optional: ⚠️ only enable the force merge if you want to do the merge just now\n      force: true\n      # optional: choose strategy when merging (default: squash)\n      strategy: rebase, merge\n      # optional: choose which types of update you want to allow (default: minor,patch)\n      update-types: major,minor,patch\n      # optional: choose if you want to allow versions with semver 0.X.X (default: false)\n      include-pre-release: true\n    secrets:\n      # identifier of the GitHub App for authentication\n      app_id: ${{ \u003cyour-app-id\u003e }}\n      # private key of the GitHub App\n      private_key: ${{ \u003cyour-private-key\u003e }}\n```\n\n\u003c/details\u003e\n\n### AutoDev\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to merge labeled pull requests into a branch.\u003c/summary\u003e\n\n```yml\nname: Autodev\non:\n  push:\n    branches-ignore:\n      - dev\n  pull_request:\n    types: [labeled, unlabeled, closed]\n\njobs:\n  autodev:\n    uses: Staffbase/gha-workflows/.github/workflows/template_autodev.yml@v10.0.0\n    with:\n      # optional: base branch from which the history originates, default: main\n      base: master\n      # optional: name of the dev branch, default: dev\n      branch: your dev branch\n      # optional: update status comment, default: false\n      # if you want to change the message, please adapt 'success_comment' and/or 'failure_comment'\n      comments: true\n      # optional: update status label, default: false\n      # if you want to change the labels, please adapt 'success_label' and/or 'failure_label'\n      labels: true\n      # optional: label which should trigger the action, default: dev\n      label: deploy\n      # optional: name of the user which does the commit, default: AutoDev Action\n      user: your name\n      # optional: mail of the user which does the commit, default: staffbot@staffbase.com\n      email: your mail\n      # optional: path relative to the repo root dir in which the GitOps action should be executed, default: .\n      working-directory: ./my-service-folder\n    secrets:\n      # optional: access token to fetch the pull requests\n      token: ${{ \u003cyour-token\u003e }}\n      # optional: identifier of the GitHub App for authentication\n      app_id: ${{ \u003cyour-app-id\u003e }}\n      # optional: private key of the GitHub App\n      private_key: ${{ \u003cyour-private-key\u003e }}\n```\n\n\u003c/details\u003e\n\n### Changeset Check\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to check a PR for the existance of \u003ca href=\"https://github.com/changesets/changesets\"\u003echangeset\u003c/a\u003e files. It will then add/update a comment on the PR.\u003c/summary\u003e\n\n```yml\nname: Changeset Check\non:\n  pull_request:\n    types: [opened, reopened, synchronize]\n\njobs:\n  changeset-check:\n    uses: Staffbase/gha-workflows/.github/workflows/template_changeset_check.yml@v10.0.0\n```\n\n\u003c/details\u003e\n\n### Changeset Release\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to create release PR and publish releases for repos using PNPM and \u003ca href=\"https://github.com/changesets/changesets\"\u003echangesets\u003c/a\u003e.\u003c/summary\u003e\n\n⚠️ Make sure you have `@changesets/cli` installed as a dev-dependency in your project!\n\n```yml\nname: Release Changesets\n\non:\n  push:\n    branches:\n      - main\n\njobs:\n  changeset-release:\n    uses: Staffbase/gha-workflows/.github/workflows/template_changeset_release.yml@v10.0.0\n    with:\n      # optional: The file containing the Node.js version to use, defaults to .nvmrc\n      node-version-file: '.node-version'\n      # optional: The script to run on publish. Defaults to `pnpm release`\n      publish-script: 'pnpm publish'\n      # optional: The script to run for bumping the package versions. Defaults to `pnpm changeset version`\n      version-script: 'pnpm version'\n      # optional: The registry to use for Node.js packages.\n      node-registry: 'https://npm.pkg.github.com/'\n      # optional: The scope to use for Node.js packages.\n      node-registry-scope: '@staffbase'\n    secrets:\n      # identifier of the GitHub App for authentication\n      app-id: ${{ \u003cyour-app-id\u003e }}\n      # private key of the GitHub App\n      private-key: ${{ \u003cyour-private-key\u003e }}\n      # needs write:packages rights\n      npm-token ${{ \u003cyour-npm-token\u003e }}\n```\n\n\u003c/details\u003e\n\n### Find Flaky Tests\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to find flaky tests.\u003c/summary\u003e\n\n```yml\nname: Find flaky tests\n\non:\n  # At 05:00 on Monday.\n  schedule:\n    - cron: '0 5 * * 1'\n\njobs:\n  flaky-tests:\n    uses: Staffbase/gha-workflows/.github/workflows/template_flaky_tests.yml@v10.0.0\n    with:\n      # identifier for the slack channel\n      slack-channel-id: 45678787976\n      # name of the slack channel\n      slack-channel-name: '#flaky-tests'\n      # optional: name of the repository where it should check, default: current repository\n      repository: 'Staffbase/test-flaky'\n      # optional: name of the branch where it should check, default: main\n      branch: 'master'\n      # optional: file path suffixes (comma seperated) to filter the test files\n      path-suffixes: '.spec.ts,.spec.tsx,.test.ts,.test.tsx'\n      # prefix of the test run which should be filtered out\n      prefix: 'test-'\n    secrets:\n      # URL of the Slack incoming webhooks\n      slack-incoming-webhooks-url: ${{ secrets.SLACK_INCOMING_WEBHOOKS_URL }}\n      # GitHub token\n      token: ${{ secrets.GITHUB_TOKEN }}\n```\n\n\u003c/details\u003e\n\n### GitOps\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to build and publish a docker image.\u003c/summary\u003e\n\n```yml\nname: GitOps\non: [push]\n\njobs:\n  gitops:\n    uses: Staffbase/gha-workflows/.github/workflows/template_gitops.yml@v10.0.0\n    with:\n      # optional: host of the docker registry, default: \"registry.staffbase.com\"\n      docker-registry: '\u003cyour-registry\u003e'\n      # optional: list of build-time variables\n      docker-build-args: |\n        \"any important args\"\n      # optional: set the target stage to build\n      docker-build-target: 'any target'\n      # optional: custom output destinations for docker build (e.g., type=registry,push=true,compression=gzip,force-compression=true). Required for DHI images.\n      docker-build-outputs: '\u003cyour-output-settings\u003e'\n      # optional: set the target platforms for build (e.g., linux/arm64), default: \"linux/amd64\"\n      docker-build-platform: \"linux/arm64\"\n      # optional: set the provenance level of the docker build, default: \"false\"\n      docker-build-provenance: '\u003cyour-provenance-level\u003e'\n      # optional: should the last stage image be retagged for the release image, default: false\n      docker-disable-retagging: true\n      # optional: path to the Dockerfile, default: ./Dockerfile\n      docker-file: \u003cpath-to-Dockerfile\u003e\n      # optional: name of the docker image, default: private/\u003crepository_name\u003e\n      docker-image: \u003cyour-image\u003e\n      # optional: custom tag for the productive docker image which is preferred over the tag generated by the workflow\n      docker-custom-tag: \u003cyour-tag\u003e\n      # optional: organization of the gitops repository, default: github.repository_owner\n      gitops-organization: \u003cyour-organization\u003e\n      # optional: repository where to update the files, default: mops\n      gitops-repository: '\u003cyour-repository\u003e'\n      # optional: user which does the commit, default: \"staffbase-actions\"\n      gitops-user: '\u003cyour-user\u003e'\n      # optional: email of the user which does the commit, default: \"staffbase-actions[bot]@users.noreply.github.com\"\n      gitops-email: '\u003cyour-email\u003e'\n      # optional: files which should be updated for dev\n      gitops-dev: |-\n        your files\n      # optional: files which should be updated for stage\n      gitops-stage: |-\n        your files\n      # optional: files which should be updated for prod\n      gitops-prod: |-\n        your files\n      # optional: defines the github runner for the gitops step if (e.g. ubuntu-24.04-arm for arm builds), default: ubuntu-24.04\n      runs-on: ubuntu-24.04-arm\n      # optional: Upwind.io client ID\n      upwind-client-id: ${{ vars.UPWIND_CLIENT_ID }}\n      # optional: Upwind.io organization ID\n      upwind-organization-id: ${{ vars.UPWIND_ORGANIZATION_ID }}\n    secrets:\n      # optional: username for the docker registry\n      docker-username: ${{ \u003cyour-docker-username\u003e }}\n      # optional: password for the docker registry\n      docker-password: ${{ \u003cyour-docker-password\u003e }}\n      # optional: list of secrets to expose to the build (e.g., key=string, GIT_AUTH_TOKEN=mytoken)\n      docker-build-secrets: |\n        \"${{ \u003cyour-secrets\u003e }}\"\n      # optional: list of secret files to expose to the build (e.g., key=filename, MY_SECRET=./secret.txt)\n      docker-build-secret-files: |\n        \"${{ \u003cyour-secret-files\u003e }}\"\n      # optional: token to access the repository\n      gitops-token: ${{ \u003cyour-gitops-token\u003e }}\n      # optional: gonosumdb environment variable\n      gonosumdb: ${{ \u003cyour-gonosumdb\u003e }}\n      # optional: identifier of the GitHub App for authentication\n      app-id: ${{ \u003cyour-app-id\u003e }}\n      # optional: private key of the GitHub App\n      private-key: ${{ \u003cyour-private-key\u003e }}\n      # optional: Upwind client secret\n      upwind-client-secret: ${{ secrets.UPWIND_CLIENT_SECRET }}\n```\n\n\u003c/details\u003e\n\n### Jira Ticket Tagging\n\n\u003cdetails\u003e\n\u003csummary\u003e\nThe action can be used to collect all jira issues between the last two tags created.\nThen the jira issues will be updated with a release date and the labels will be tagged with the current tag name.\n\u003c/summary\u003e\n\n```yml\nname: Annotate Jira Issues\non:\n  push:\n    tags: ['**']\n\njobs:\n  jira_annotate:\n    uses: Staffbase/gha-workflows/.github/workflows/template_jira_tagging.yml@v10.0.0\n    with:\n      # optional: name of the service to add as label, default: name of the repository\n      name: 'component name'\n      # optional: regex to match the tags\n      tag-matcher: your regex\n    secrets:\n      # basic url for jira api\n      jira-url: ${{ \u003cyour-url\u003e }}\n      # api token for jira usage\n      jira-token: ${{ \u003cyour-token\u003e }}\n      # email of the api token owner\n      jira-email: ${{ \u003cyour-email\u003e }}\n```\n\n\u003c/details\u003e\n\n### LaunchDarkly Code References\n\n\u003cdetails\u003e\n\u003csummary\u003e\nThe action can be used to collect and push code references for LaunchDarkly feature flags.\n\u003c/summary\u003e\n\n```yml\nname: Find LaunchDarkly flag code references\non:\n  push:\n    branches:\n      - main\n\njobs:\n  ld_code_references:\n    uses: Staffbase/gha-workflows/.github/workflows/template_launchdarkly_code_references.yml@v10.0.0\n    with:\n      # optional: key of the LD project, default: default\n      project-key: 'my-project'\n    secrets:\n      # LD access token with correct access rights\n      access-token: ${{ \u003cyour-access-token\u003e }}\n```\n\n\u003c/details\u003e\n\n### Merge Block\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to block the merge if a do not merge label is set.\u003c/summary\u003e\n\n```yml\nname: Merge Block\n\non:\n  pull_request:\n    types: [opened, labeled, unlabeled]\n\njobs:\n  block:\n    uses: Staffbase/gha-workflows/.github/workflows/template_merge_block.yml@v10.0.0\n    with:\n      # optional: name of the label if the PR should not be merged, default: do not merge\n      label: merge block\n      # optional: comment when the PR is blocked, default: true\n      comment: false\n```\n\n\u003c/details\u003e\n\n### Release Drafter\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to draft automatically a new release.\u003c/summary\u003e\n\nIf you want to use the template action please note that you must have the configuration file `.github/release-drafter.yml`.\nMore information on how to configure this file can be found [here](https://github.com/marketplace/actions/release-drafter#configuration).\n\n```yml\nname: Release Drafter\n\non:\n  push:\n    branches:\n      - main\n\njobs:\n  update_release_draft:\n    uses: Staffbase/gha-workflows/.github/workflows/template_release_drafter.yml@v10.0.0\n    with:\n      # optional: name of the release drafter configuration file, default: release-drafter.yml\n      config-name: release-drafter-test.yml\n      # optional: name of the release\n      name: Version X.Y.Z\n      # optional: should the release be published, default: false\n      publish: true\n      # optional: tag name of the release\n      tag: vX.Y.Z\n      # optional: version to be associated with the release\n      version: X.Y.Z\n      # optional: prerelease status of the release, default: false\n      prerelease: true\n      # optional: prerelease identifier of the release\n      prerelease-identifier: alpha\n    secrets:\n      # optional: access token for the release drafter\n      token: ${{ \u003cyour-token\u003e }}\n      # optional: identifier of the GitHub App for authentication\n      app_id: ${{ \u003cyour-app-id\u003e }}\n      # optional: private key of the GitHub App\n      private_key: ${{ \u003cyour-private-key\u003e }}\n```\n\n\u003c/details\u003e\n\n### Release Version Detector\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to get the next version for a service.\u003c/summary\u003e\n\nThe new version is in the format `YEAR.WEEK.COUNTER`. You will get the version as output with the key `new_version` and the new tag with the key `new_tag`.\nYou can remove all other version resolver from your configuration.\n\n```yml\nname: Release Version Detector\n\non:\n  push:\n    branches:\n      - main\n\njobs:\n  new_version:\n    uses: Staffbase/gha-workflows/.github/workflows/template_release_version.yml@v10.0.0\n    with:\n      # optional: prefix of the tag in order to find the last release; this is useful for multi artifact/service repositories, default: 'v'\n      tag-prefix: 'app-v'\n      # optional: suffix of the tag in order to find the last release; this is useful for multi artifact/service repositories, default: '' (empty string)\n      tag-suffix: '-native'\n      # optional: format of the version, default: weekly\n      format: 'quarterly'\n```\n\nYou could use the action in combination with the reusable release drafter.\nMake sure to add the following lines to update the week number correctly for a draft release.\n\n```yml\non:\n  schedule:\n    # run every Monday at midnight and every new year to ensure the draft release have the correct week number\n    - cron: '0 0 * * 1'\n    - cron: '0 0 1 1 *'\n```\n\n\u003c/details\u003e\n\n### Secret Scanning\n\n\u003cdetails\u003e\n\u003csummary\u003eThis workflow should be called by a PR and will scan it's commits for leaked credentials. The workflow will fail if any results are found.\u003c/summary\u003e\n\n```yml\nname: Secret Scan\n\non: [pull_request]\n\njobs:\n  trufflehog:\n    uses: Staffbase/gha-workflows/.github/workflows/template_secret_scan.yml@v10.0.0\n```\n\n\u003c/details\u003e\n\n### Stale\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to close old pull requests or issues automatically after a few days.\u003c/summary\u003e\n\n```yml\nname: Stale PRs\n\non:\n  schedule:\n    - cron: '0 0 * * 1-5'\n\njobs:\n  stale:\n    uses: Staffbase/gha-workflows/.github/workflows/template_stale.yml@v10.0.0\n    with:\n      # optional: comment on the stale pull request while closed, default: This stale PR was closed because there was no activity.\n      close-pr-message: your message\n      # optional: idle number of days before marking pull requests stale, default: 60\n      days-before-pr-stale: 30\n      # optional: delete branch after closing the pull request, default: true\n      delete-branch: false\n      # optional: labels on pull requests exempted from stale\n      exempt-pr-labels: your labels\n      # optional: label to apply on staled pull requests, default: stale\n      stale-pr-label: staling\n      # optional: comment on the staled pull request, default: This PR has been automatically marked as stale because there has been no recent activity in the last 60 days. It will be closed in 7 days if no further activity occurs such as removing the label.\n      stale-pr-message: your message\n```\n\n\u003c/details\u003e\n\n### TechDocs Monorepo (Azure)\n\n\u003cdetails\u003e\n\u003csummary\u003eThis GitHub Action can be used for generating and publishing Backstage TechDocs for a monorepo. It is limited to an Azure Storage account.\u003c/summary\u003e\n\n```yml\nname: TechDocs\n\non:\n  push:\n    branches:\n      - 'main'\n    paths:\n      - 'docs/**'\n      - 'mkdocs.yml'\n      - '.github/workflows/techdocs.yaml'\n\njobs:\n  techdocs:\n    uses: Staffbase/gha-workflows/.github/workflows/template_techdocs_monorepo.yml@v10.0.0\n    secrets:\n      # required: specifies an Azure Storage account name\n      azure-account-name: ${{ vars.TECHDOCS_AZURE_ACCOUNT_NAME }}\n      # required: specifies the access key associated with the storage account\n      azure-account-key: ${{ secrets.TECHDOCS_AZURE_ACCESS_KEY }}\n```\n\n\u003c/details\u003e\n\n### TechDocs\n\n\u003cdetails\u003e\n\u003csummary\u003eThis GitHub Action can be used for generating and publishing Backstage TechDocs.\u003c/summary\u003e\n\n```yml\nname: TechDocs\n\non:\n  push:\n    branches:\n      - 'main'\n    paths:\n      - 'docs/**'\n      - 'mkdocs.yml'\n      - '.github/workflows/techdocs.yaml'\n\njobs:\n  techdocs:\n    uses: Staffbase/gha-workflows/.github/workflows/template_techdocs.yml@v10.0.0\n    with:\n      # optional: kind of the Backstage entity, default: Component\n      # ref: https://backstage.io/docs/features/software-catalog/descriptor-format#contents\n      entity-kind: Component\n      # optional: name of the Backstage entity, default: repository name\n      entity-name: custom-entity-name\n      # optional: list of space separated additional python plugins to install\n      additional-plugins: 'mkdocs-minify-plugin\\\u003e=0.3'\n    secrets:\n      # optional: specifies an Azure Storage account name\n      azure-account-name: ${{ vars.TECHDOCS_AZURE_ACCOUNT_NAME }}\n      # optional: specifies the access key associated with the storage account\n      azure-account-key: ${{ secrets.TECHDOCS_AZURE_ACCESS_KEY }}\n```\n\n\u003c/details\u003e\n\n### Terraform Format\n\n\u003cdetails\u003e\n\n\u003csummary\u003eThis GitHub Action checks the formatting of Terraform files and commit fixes if necessary.\u003c/summary\u003e\n\n```yml\nname: Terraform\n\non: [pull_request]\n\njobs:\n  terraform:\n    uses: Staffbase/gha-workflows/.github/workflows/template_terraform_format.yml@v10.0.0\n    with:\n      # optional: Terraform version, default: latest\n      terraform-version: latest\n      # optional: Committer name, default: staffbase-actions[bot]\n      committer-name: staffbase-actions[bot]\n      # optional: Committer email, default: staffbase-actions[bot]@users.noreply.github.com\n      committer-email: staffbase-actions[bot]@users.noreply.github.com\n    secrets:\n      # GitHub App is required because GITHUB_TOKEN will not trigger new actions\n      app-id: ${{ \u003cyour-app-id\u003e }}\n      private-key: ${{ \u003cyour-private-key\u003e }}\n```\n\n\u003c/details\u003e\n\n### Yamllint\n\n\u003cdetails\u003e\n\u003csummary\u003eThe action can be used to check yaml files for formatting.\u003c/summary\u003e\n\n```yml\nname: YAMLlint\n\non:\n  push:\n    branches:\n      - '**'\n    tags-ignore:\n      - '**'\n\njobs:\n  yamllint:\n    uses: Staffbase/gha-workflows/.github/workflows/template_yaml.yml@v10.0.0\n    with:\n      # optional: name of the running action, default: yamllint / yamllint\n      action-name: your name\n      # optional: path which files should be checked recursively, default: .\n      target-path: your path\n```\n\n\u003c/details\u003e\n\n## Limitations 🚧\n\nWith the current implementation of the reusable workflows from GitHub, we have some usage limitations.\n\n- It isn't possible to [access environment variables][reusable-workflow-env] and [secrets][reusable-workflow-secrets], so it's necessary to pass them to the workflow. But we don't want to do it for all secrets.\n\nThere are also some [further limitations][further-limitations] if you want to use the `GITHUB_TOKEN`.\n\n## Release 🔖\n\nTo create a new release just use [this page][release-new] and publish the draft release.\n\n## Contributing 👥\n\nPlease read [CONTRIBUTING.md](CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.\n\n## License 📄\n\nThis project is licensed under the Apache-2.0 License - see the [LICENSE.md](LICENSE) file for details.\n\n\u003ctable\u003e\n  \u003ctr\u003e\n    \u003ctd\u003e\n      \u003cimg src=\"docs/assets/images/staffbase.png\" alt=\"Staffbase GmbH\" width=\"96\" /\u003e\n    \u003c/td\u003e\n    \u003ctd\u003e\n      \u003cb\u003eStaffbase GmbH\u003c/b\u003e\n      \u003cbr /\u003eStaffbase is an internal communications platform built to revolutionize the way you work and unite your company. Staffbase is hiring: \u003ca href=\"https://staffbase.com/jobs/\" target=\"_blank\" rel=\"noreferrer\"\u003estaffbase.com/jobs\u003c/a\u003e\n      \u003cbr /\u003e\u003ca href=\"https://github.com/Staffbase\" target=\"_blank\" rel=\"noreferrer\"\u003eGitHub\u003c/a\u003e | \u003ca href=\"https://staffbase.com/\" target=\"_blank\" rel=\"noreferrer\"\u003eWebsite\u003c/a\u003e | \u003ca href=\"https://staffbase.com/jobs/\" target=\"_blank\" rel=\"noreferrer\"\u003eJobs\u003c/a\u003e\n    \u003c/td\u003e\n  \u003c/tr\u003e\n\u003c/table\u003e\n\n[reusable-workflows]: https://docs.github.com/en/actions/learn-github-actions/reusing-workflows\n[release-new]: https://github.com/Staffbase/gha-workflows/releases\n[reusable-workflow-secrets]: https://github.com/orgs/community/discussions/17554\n[reusable-workflow-env]: https://github.com/orgs/community/discussions/26671\n[further-limitations]: https://docs.github.com/en/actions/security-guides/automatic-token-authentication#using-the-github_token-in-a-workflow\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstaffbase%2Fgha-workflows","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstaffbase%2Fgha-workflows","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstaffbase%2Fgha-workflows/lists"}