Changes for page Create Automatically Updating Repo in GitHub
Last modified by chrisby on 2025/04/22 14:54
Summary
-
Page properties (1 modified, 0 added, 0 removed)
Details
- Page properties
-
- Content
-
... ... @@ -1,45 +2,42 @@ 1 - 2 2 ### GitHub Actions 3 3 4 4 The GitHub actions are used for CI purposes. One job is auto update, which can be enabled as follows: 4 + 5 5 * Repo > Settings > 6 - * General > 7 - * Pull Requests > enable "Allow auto-merge". 8 - * Branches > Add classic branch protection rule 9 - * Branch name pattern: main 10 - * Enable "Require status checks to pass before merging". 11 - * Actions > General > Workflow permissions > enable "Allow GitHub Actions to create and approve pull requests" 12 - * If option is greyed out, then probably the project policy is dictated by the repository policy. Simply do this in repository settings then. 6 + * General > 7 + * Pull Requests > enable "Allow auto-merge". 8 + * Branches > Add classic branch protection rule 9 + * Branch name pattern: main 10 + * Enable "Require status checks to pass before merging". 11 + * Actions > General > Workflow permissions > enable "Allow GitHub Actions to create and approve pull requests" 12 + * If option is greyed out, then probably the project policy is dictated by the repository policy. Simply do this in repository settings then. 13 13 * Copy the workflow file from this project. The key configs are the "permissions" to include "contents: write, pull-requests: write" and the "auto-merge" step. 14 14 15 15 If you don't need a private module from the same repository, you must delete the "Authenticate for private modules" job. Otherwise, the following steps are necessary: 16 + 16 16 * GitHub > Profile > Settings > Developer Settings > Personal Access Tokens > Tokens (classic) > Generate new token 17 - * Name: ACTIONS_TOKEN 18 - * Select scopes: "repo" 19 - * Copy the token 20 -* Repo > Settings > Secrets and variables > Actions > New repository secret > 21 - * Name: MY_TOKEN 22 - * You need to set "environment: MY_TOKEN" in the workflow file to use its environment secrets 23 - * Environment Secrets > Add environment secret 24 24 * Name: ACTIONS_TOKEN 25 - * Value: <the token you copied before> 19 + * Select scopes: "repo" 20 + * Copy the token 21 +* Repo > Settings > Secrets and variables > Actions > New repository secret > 22 + * Name: MY_TOKEN 23 + * You need to set "environment: MY_TOKEN" in the workflow file to use its environment secrets 24 + * Environment Secrets > Add environment secret 25 + * Name: ACTIONS_TOKEN 26 + * Value: 26 26 27 27 Add this to the workflow file: 28 28 29 -```yaml 30 - - name: Authenticate for private modules 31 - env: 32 - ACTIONS_TOKEN: ${{ secrets.ACTIONS_TOKEN }} 33 - run: | 34 - git config --global url."https://${ACTIONS_TOKEN}:x-oauth-basic@github.com/".insteadOf "https://github.com/" 35 - go env -w GOPRIVATE=github.com/ocelot-cloud/* 36 -``` 30 + - name: Authenticate for private modules 31 + env: 32 + ACTIONS_TOKEN: ${{ secrets.ACTIONS_TOKEN }} 33 + run: | 34 + git config --global url."https://${ACTIONS_TOKEN}:x-oauth-basic@github.com/".insteadOf "https://github.com/" 35 + go env -w GOPRIVATE=github.com/ocelot-cloud/* 37 37 38 38 ### Private Go Repository Dependency 39 39 40 40 If you are developing with Go and need a private repository as a dependency, you need to tell the SDK to use SSH instead of HTTPS to get access. 41 41 42 -```bash 43 -git config --global url."ssh://git@github.com/".insteadOf "https://github.com/" 44 -go env -w GOPRIVATE=github.com/ocelot-cloud/* 45 -``` 41 + git config --global url."ssh://git@github.com/".insteadOf "https://github.com/" 42 + go env -w GOPRIVATE=github.com/ocelot-cloud/*