Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
80 changes: 0 additions & 80 deletions .github/workflows/semantic-release.yaml

This file was deleted.

35 changes: 1 addition & 34 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,16 @@
# GitHub Actions and Workflows

Reusable GitHub Actions workflows forming the CI baseline for every BruzIT repository: semantic-release versioning and MegaLinter linting.
Reusable GitHub Actions and workflows forming the CI baseline for every BruzIT repository: semantic-release versioning and MegaLinter linting.

## Features

- [Semantic Release Action](#semantic-release-composite-action)
- [Semantic Release Workflow](#reusable-semantic-release-workflow)
- [MegaLinter Workflow](#reusable-megalinter-workflow)

### Semantic Release Composite Action

[Semantic Release composite action](semantic-release/action.yaml) using the Conventional Commits preset to automate versioning, tags with SemVer and major tag, generates [GitHub releases](https://github.com/bruzit/github-actions-and-workflows/releases), and updates the [CHANGELOG](CHANGELOG.md). It checks out the repository with the GitHub App token, so the changelog commit and the major tags are pushed as the GitHub App; without `app-id` it uses `GITHUB_TOKEN`.

### Reusable Semantic Release Workflow

Reusable [Semantic Release workflow](.github/workflows/semantic-release.yaml), similar to the [Semantic Release Action](#semantic-release-composite-action).

### Reusable MegaLinter Workflow

Reusable [MegaLinter workflow](.github/workflows/megalinter.yaml) linting pull requests with the `terraform` flavor, auto-committing fixable findings. Linters run with MegaLinter's default rules, except zizmor, whose [`zizmor.yaml`](zizmor.yaml) allows tag-pinned actions.
Expand Down Expand Up @@ -91,34 +86,6 @@ To create a GitHub App and a GitHub App Installation:

Configure Semantic Release in the repository, for example like this repository's [`.releaserc.yaml`](.releaserc.yaml).

### Use Semantic Release Workflow

Similar to [Use Semantic Release Action](#use-semantic-release-action), with the reusable workflow:

```yaml
---
name: Semantic Release

on:
push:
branches:
- main

jobs:
release:
name: Release
uses: bruzit/github-actions-and-workflows/.github/workflows/semantic-release.yaml@v0
permissions:
contents: write
issues: write
pull-requests: write
with:
GH_SEM_REL_APP_ID: ${{ vars.GH_SEM_REL_APP_ID }}
semantic_release_plugins: "@semantic-release/exec" # OPTIONAL Space-separated list of additional semantic-release plugins to install.
secrets:
GH_SEM_REL_APP_PEM_FILE: ${{ secrets.GH_SEM_REL_APP_PEM_FILE }}
```

### Use MegaLinter Workflow

Create `.github/workflows/megalinter.yaml`:
Expand Down
Loading