Replace named arg

This commit is contained in:
Nick Alteen 2023-09-01 14:36:35 -04:00
parent 137e75c6a6
commit f67457a744
3 changed files with 10 additions and 22 deletions

View File

@ -48,8 +48,8 @@ jobs:
INPUT_WHO_TO_GREET: Mona Lisa Octocat
run: |
docker run \
--env INPUT_WHO_TO_GREET="Mona Lisa Octocat" \
--rm ${{ env.TEST_TAG }}
--rm ${{ env.TEST_TAG }} \
${{ env.INPUT_WHO_TO_GREET }}
test-action:
name: GitHub Actions Test

View File

@ -51,21 +51,10 @@ need to perform some initial setup steps before you can develop your action.
1. :white_check_mark: Test the container
You can pass individual environment variables using the `--env` or `-e` flag.
You can pass input arguments in the `docker run` call.
```bash
$ docker run --env INPUT_WHO_TO_GREET="Mona Lisa Octocat" actions/container-action
::notice file=entrypoint.sh,line=7::Hello, Mona Lisa Octocat!
```
Or you can pass a file with environment variables using `--env-file`.
```bash
$ cat ./.env.test
INPUT_WHO_TO_GREET="Mona Lisa Octocat"
$ docker run --env-file ./.env.test actions/container-action
$ docker run actions/container-action "Mona Lisa Octocat"
::notice file=entrypoint.sh,line=7::Hello, Mona Lisa Octocat!
```
@ -87,13 +76,12 @@ can choose any base Docker image and language you like, you can change this to
suite your needs. There are a few main things to remember when writing code for
container actions:
- Inputs are accessed using environment variables with the format
`INPUT_<INPUT_NAME>`. For example, this action has an input called
`who-to-greet`, which can be accessed in the entrypoint script using
`INPUT_WHO_TO_GREET`.
- Inputs are accessed using argument identifiers. For example, the first input
to this action, `who-to-greet`, can be accessed in the entrypoint script using
`$1`.
```bash
GREETING="Hello, $INPUT_WHO_TO_GREET!"
GREETING="Hello, $1!"
```
- GitHub Actions supports a number of different workflow commands such as
@ -140,7 +128,7 @@ So, what are you waiting for? Go ahead and start customizing your action!
```bash
docker build -t actions/container-action .
docker run --env INPUT_WHO_TO_GREET="Mona Lisa Octocat" actions/container-action
docker run actions/container-action "Mona Lisa Octocat"
```
1. Commit your changes

View File

@ -1,7 +1,7 @@
#!/bin/sh -l
# Use INPUT_<INPUT_NAME> to get the value of an input
GREETING="Hello, $INPUT_WHO_TO_GREET!"
GREETING="Hello, $1!"
# Use workflow commands to do things like set debug messages
echo "::notice file=entrypoint.sh,line=7::$GREETING"