The rationale for this action is that
Dependabot cannot
update the go version that is defined in a go.mod file.
- To use this action, ensure that:
Allow GitHub Actions to create and approve pull requestsoption has been enabled in the action settings. In order to find this, attach:/settings/actionsto the project URL, i.e.:https://github.com/<owner>/<project-name>/settings/actions. - Once the setting has been enabled, create a
~/.github/workflows/gomod-go-version-updater.ymlfile with the following content:--- name: gomod-go-version-updater-action "on": schedule: - cron: "42 6 * * *" permissions: contents: write pull-requests: write jobs: gomod-go-version-updater-action: runs-on: ubuntu-22.04 steps: - uses: 030/gomod-go-version-updater-action@v0.1.6
- To ensure that an action is triggered for testing the Golang version update,
add a
pull_request_reviewtrigger. This will cause a specific Workflow Action to run whenever someone submits a review for the pull request created by the gomod-go-version-updater-action:"on": # required by gomod-go-version-updater to trigger this action once pr has # been reviewed pull_request_review: types: [submitted]
- Optional: if private go modules have to be downloaded:
- uses: 030/gomod-go-version-updater-action@v0.1.6 with: github-token-for-downloading-private-go-modules: ${{ secrets.GITHUB_TOKEN }}
- Optional: set the log level to
DEBUG,WARNING,ERRORorCRITICAL(default: INFO):- uses: 030/gomod-go-version-updater-action@v0.1.6 with: gomod-go-version-updater-action-log-level: DEBUG
- Optional: add an extra label to the PR that will be created:
- uses: 030/gomod-go-version-updater-action@v0.1.6 with: extra-pr-label: something
If you want to develop on this action, you'll probably want to use a virtual environment. Feel free to arrange that in any way you want, but it could be as simple as running
python3 -m venv .venvDon't forget to activate the virtual environment next:
source .venv/bin/activateTo install the dependencies to work on the project, you can use pip:
pip install '.[dev]'To run the test suite run:
pytestBesides the test suite we run with pytest (see above) we run a more extensive set as part of quality control. See the run steps that are defined in
this GitHub Workflow for details.