467 Commits
Author SHA1 Message Date
Marcus Young d3a5f123b4 [Automated 🤖 ] Bump to version 2.300.1 2.300.1 2022-12-19 10:37:02 -06:00
Marcus Young de9ff4a7ac [Automated 🤖 ] Bump to version 2.300.0 2.300.0 2022-12-14 02:52:06 -06:00
myoung34andGitHub 759fd9b51d Merge pull request #264 from Abramo-Bagnara/master
Allow to put APP_PRIVATE_KEY in Docker env file. Introduced APP_LOGIN…
2022-12-12 14:56:59 -06:00
myoung34andGitHub 1e844308fe Merge pull request #268 from lumagi/remove_recursive_chown
Change recursive chown to flat chown for tools directory
2022-12-12 14:50:23 -06:00
Lukas Magel 21dd8bec01 Change recursive chown to flat chown for tools directory
If the tools cache is already populated with tooling in a derived docker
image, performing a recursive chown significantly slows down ephemeral
runner startup.
2022-12-12 20:52:43 +01:00
Abramo Bagnara 32be8f566f Added some info about APP_LOGIN in README.md. 2022-12-12 19:03:03 +01:00
Abramo Bagnara 76e955de4e Improved backward compatibility with sane defaults for APP_LOGIN. 2022-12-09 08:08:27 +01:00
myoung34andGitHub cab9ae37d9 Merge pull request #263 from ilyesAj/patch-1
add zip package to dockerfile
2022-12-06 13:39:43 -06:00
myoung34andGitHub 0d206bc567 Merge pull request #265 from nmalaguti/master
Fix expired GPG key for opensuse kubic repository
2022-12-06 12:34:50 -06:00
Nick Malaguti fc8208dde5 Fix expired GPG key for opensuse kubic repository
https://download.opensuse.org/repositories/devel:/kubic:/libcontainers:/stable/xUbuntu_20.04/Release.key
expired on 2022-12-06. An updated key with an expiration of 2025-01-30
is available at
https://build.opensuse.org/project/keys_and_certificates/devel:kubic.
2022-12-06 11:39:40 -05:00
Abramo Bagnara 0d5e2807ea Allow to put APP_PRIVATE_KEY in Docker env file. Introduced APP_LOGIN to fix access token retrieval in case of multiple GitHub's App subscriber. 2022-12-06 08:50:29 +01:00
ilyes AjroudandGitHub 0530304feb add zip package 2022-12-05 15:24:07 +01:00
myoung34andGitHub d54b9126fd Merge pull request #254 from chantra/github_app
Add support for GitHub app authentication
2022-11-11 09:17:41 -05:00
Manu Bretelle 5dd79b7933 entrypoint: make APP_ID/APP_PRIVATE_KEY mutually exclusive with
{ACCESS,RUNNER}_TOKEN.

```
$ docker run --env RUNNER_TOKEN=foo --env APP_ID=1234 --env APP_PRIVATE_KEY="$(<~/Downloads/cert.pem)" runner_app
REPO_URL required for repo runners
Runner reusage is disabled
ERROR: ACCESS_TOKEN or RUNNER_TOKEN provided but are mutually exclusive with APP_ID and APP_PRIVATE_KEY.
$ docker run --env ACCESS_TOKEN=foo --env APP_ID=1234 --env APP_PRIVATE_KEY="$(<~/Downloads/cert.pem)" runner_app
REPO_URL required for repo runners
Runner reusage is disabled
ERROR: ACCESS_TOKEN or RUNNER_TOKEN provided but are mutually exclusive with APP_ID and APP_PRIVATE_KEY.
$ docker run --env ACCESS_TOKEN=foo --env APP_ID=1234 --env APP_PRIVATE_KEY="$(<~/Downloads/cert.pem)" runner_app
$ docker run --env APP_ID=250536  runner_app
REPO_URL required for repo runners
Runner reusage is disabled
ERROR: Both APP_ID and APP_PRIVATE_KEY must be specified.
$ docker run --env APP_ID=1234 --env APP_PRIVATE_KEY="$(<~/Downloads/cert.pem)" runner_app

REPO_URL required for repo runners
Runner reusage is disabled
Obtaining access token for app_id 1234
Obtaining the token of the runner
curl: (22) The requested URL returned error: 404
Configuring

--------------------------------------------------------------------------------
|        ____ _ _   _   _       _          _        _   _                      |
|       / ___(_) |_| | | |_   _| |__      / \   ___| |_(_) ___  _ __  ___      |
|      | |  _| | __| |_| | | | | '_ \    / _ \ / __| __| |/ _ \| '_ \/ __|     |
|      | |_| | | |_|  _  | |_| | |_) |  / ___ \ (__| |_| | (_) | | | \__ \     |
|       \____|_|\__|_| |_|\__,_|_.__/  /_/   \_\___|\__|_|\___/|_| |_|___/     |
|                                                                              |
|                       Self-hosted runner registration                        |
|                                                                              |
--------------------------------------------------------------------------------

Invalid configuration provided for url. Terminating unattended configuration.
An error occurred: Not configured. Run config.(sh/cmd) to configure the runner.
```
2022-11-10 13:31:22 -08:00
Manu Bretelle 60a999a3c6 Update README.md with PR feedback 2022-11-10 13:31:22 -08:00
Manu Bretelle f98550b162 Fix trailing space in .github/workflows/deploy.yml 2022-11-10 13:31:22 -08:00
Manu Bretelle 91120c3c92 Update README to document APP_ID/APP_PRIVATE_KEY
Document the new environment variables and highlight the possible
security risk and provide possible mitigations.
2022-11-10 13:31:22 -08:00
Manu Bretelle fca69823a3 Copy app_token.sh when building the docker image 2022-11-10 13:31:22 -08:00
Manu Bretelle b2d820fa70 Add suport for using a GitHub app to run the runner.
If both `APP_ID` and `APP_PRIVATE_KEY` are set, `entrypoint.sh` will
fetch an `ACCESS_TOKEN` for the GitHub app using `app_token.sh` script.

`ACCESS_TOKEN` will get set, and `entrypoint.sh` will carry on as it
used to had `ACCESS_TOKEN` been set from the environment variable.
2022-11-10 13:31:22 -08:00
Manu Bretelle 37f49b1f45 Add a script to fetch an access token for a Github App.
This script will fetch an access token from Github for a Github app.

It is expected that `APP_ID` and `APP_PRIVATE_KEY` environment variables are set.

Running
```
APP_ID=12345 APP_PRIVATE_KEY="$(</path/to/githubapp.pem)" bash ./app_token.sh
```

will generate a token suitable to use as `ACCESS_TOKEN`.
2022-11-10 13:31:22 -08:00
Marcus Young e2290eb566 [Automated 🤖 ] Bump to version 2.299.1 2.299.1 2022-11-02 20:06:22 -04:00
Marcus Young 1cc693a3d3 [Automated 🤖 ] Bump to version 2.299.0 2.299.0 2022-11-02 15:10:20 -04:00
Marcus Young 6a29ed87fa Sid is now bookworm in lsb_release -cs 2022-10-31 10:03:36 -05:00
Marcus Young 9839dff17b [Automated 🤖 ] Bump to version 2.298.2 2.298.2 2022-10-04 11:52:15 -05:00
Marcus Young 602720b947 [Automated 🤖 ] Bump to version 2.298.1 2.298.1 2022-10-04 10:36:00 -05:00
Marcus Young 190b11ed81 [Automated 🤖 ] Bump to version 2.298.0 2.298.0 2022-10-04 07:27:21 -05:00
myoung34andGitHub 855fa1595c Merge pull request #250 from chantra/fix_ephemeral
Fix ephemeral support
2022-10-02 08:31:55 -05:00
chantra d36049625a Fix ephemeral support
The quotes added in d6e229ec5d cause
`ephemeral` to evaluate as false when `DISABLE_AUTO_UPDATE` was not set.

This is explained in details in #249. This diff changes the logic to use
an array where extra parameters are being added.
When calling config.sh, the array is expanded.

Testing:
../self_hosted_runner.env contains
```
EPHEMERAL=true
```

Before: https://gist.github.com/chantra/443dfaa60d964d938bcb1c020781ca00
we can see multiple jobs got scheduled on the runner

After: https://gist.github.com/chantra/061dc471c63964c01a2e3733a53bd3ec
we can see that when the job finished, the container shutdown.

After with DISABLE_AUTO_UPDATE set: https://gist.github.com/chantra/df0102c7340b8f6bfd458ec56d9fa29c

Also adding `set -x` before the call to `config.sh` revealed the
arguments were correctly added.

Fixes #249
2022-09-30 14:49:04 -07:00
Marcus Young becabea1c5 Hotfix: more lenient sid to bullseye sub 2022-09-28 01:48:12 -05:00
Marcus Young b8f41da1fe Fix ghcli installer by using API and not html parsing 2022-09-26 12:08:03 -05:00
Marcus Young e28f9c5b9f Fix permissions for release creation 2.297.0 2022-09-26 11:27:59 -05:00
Marcus Young 610667a189 [Automated 🤖 ] Bump to version 2.297.0 2022-09-26 10:54:33 -05:00
Marcus Young 8ccc845c12 Port ghcr to latest build 2022-09-16 11:21:21 -05:00
Marcus Young 90f3ce9721 Force a latest release build 2022-09-16 11:14:02 -05:00
myoung34andGitHub 68711a894a Merge pull request #245 from jkroepke/patch-1
Add ghcr.io as image mirror
2022-09-16 11:07:26 -05:00
Jan-Otto KröpkeandGitHub 1b0abddbf3 Add ghcr.io as image mirror 2022-09-16 08:27:22 +02:00
myoung34andGitHub deeea3a153 Merge pull request #242 from myoung34/test_on_pr
Test on pr
2022-09-12 10:56:05 -05:00
Marcus Young 4731be7005 Test on pr 2022-09-12 10:55:17 -05:00
myoung34andGitHub 0c2ccf2f87 Merge pull request #241 from myoung34/contributing
add contributing.md
2022-09-12 10:51:40 -05:00
Marcus Young 9a629ce2c0 add contributing.md 2022-09-12 10:48:14 -05:00
myoung34andGitHub f975901955 Merge pull request #240 from myoung34/chown_optimization
Chown optimization
2022-09-12 09:10:45 -05:00
Marcus Young c437ed6e7c remove unnecessary echo from workflow 2022-09-10 19:49:06 -05:00
Marcus Young bd3554e89c Fix typos 2022-09-10 19:32:13 -05:00
Marcus Young 0fdcf663ba Fix workflow name 2022-09-10 19:24:14 -05:00
Marcus Young d6e229ec5d shellcheck entrypoint.sh 2022-09-10 19:23:25 -05:00
Marcus Young a384f0df6e Set up pre-commit 2022-09-10 19:21:17 -05:00
Marcus Young be89b0b426 Add chown optimization, set up shellcheck 2022-09-10 19:08:40 -05:00
Marcus Young 5020a80319 [Automated 🤖 ] Bump to version 2.296.2 2.296.2 2022-09-08 12:46:35 -05:00
myoung34andGitHub e3d7039671 Merge pull request #234 from Rumbles/master
Check to see if not running as root
2022-09-06 19:41:53 -05:00
myoung34andGitHub 24200494ce Merge pull request #238 from nmalaguti/feature/github-cli-gpg-key-problem
Change gh cli install method to github releases
2022-09-06 19:24:04 -05:00