mirror of
https://forgejo.merr.is/annika/actions-docker-extract.git
synced 2025-12-10 14:17:39 -05:00
🚥 Test cross-platform support via Workflows (#6)
This commit is contained in:
parent
7d86f1b9ad
commit
97141378a4
2 changed files with 46 additions and 6 deletions
40
.github/workflows/platforms.yml
vendored
Normal file
40
.github/workflows/platforms.yml
vendored
Normal file
|
|
@ -0,0 +1,40 @@
|
||||||
|
name: Test Cross Platform Support
|
||||||
|
|
||||||
|
on: [push]
|
||||||
|
|
||||||
|
jobs:
|
||||||
|
linux:
|
||||||
|
runs-on: ubuntu-latest
|
||||||
|
name: Extract Example File on Ubuntu
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- run: docker build -t example:${{ github.sha }} ./.github/tests
|
||||||
|
- uses: ./
|
||||||
|
id: extract
|
||||||
|
with:
|
||||||
|
image: example:${{ github.sha }}
|
||||||
|
path: /files/001.txt
|
||||||
|
- run: test -e ${{ steps.extract.outputs.destination }}/001.txt || exit 1
|
||||||
|
macos:
|
||||||
|
runs-on: macos-latest
|
||||||
|
name: Extract Example File on macOS
|
||||||
|
steps:
|
||||||
|
- uses: actions/checkout@v2
|
||||||
|
- name: Install Docker Machine
|
||||||
|
run: |
|
||||||
|
brew install docker docker-machine
|
||||||
|
docker-machine create --driver virtualbox default
|
||||||
|
eval $(docker-machine env default)
|
||||||
|
env | grep DOCKER >> $GITHUB_ENV
|
||||||
|
- run: docker build -t example:${{ github.sha }} ./.github/tests
|
||||||
|
- uses: ./
|
||||||
|
id: extract
|
||||||
|
with:
|
||||||
|
image: example:${{ github.sha }}
|
||||||
|
path: /files/001.txt
|
||||||
|
- run: test -e ${{ steps.extract.outputs.destination }}/001.txt || exit 1
|
||||||
|
windows:
|
||||||
|
runs-on: windows-latest
|
||||||
|
name: Extract Example File on Windows
|
||||||
|
steps:
|
||||||
|
- run: echo "Docker is not supported in GitHub's hosted Windows runners"
|
||||||
12
README.md
12
README.md
|
|
@ -15,7 +15,7 @@ All inputs are required.
|
||||||
|
|
||||||
| ID | Description | Examples |
|
| ID | Description | Examples |
|
||||||
| --- | ----------- | -------- |
|
| --- | ----------- | -------- |
|
||||||
| `image` | Docker Image to extract files from | `alpine` `docker.pkg.github.com/github/semantic/semantic` |
|
| `image` | Docker Image to extract files from | `alpine` `ghcr.io/github/super-linter:latest` |
|
||||||
| `path` | Path (from root) to a file or directory within Image | `files/example.txt` `files` `files/.` |
|
| `path` | Path (from root) to a file or directory within Image | `files/example.txt` `files` `files/.` |
|
||||||
|
|
||||||
> :paperclip: To copy the **contents** of a directory the `path` must end with
|
> :paperclip: To copy the **contents** of a directory the `path` must end with
|
||||||
|
|
@ -61,7 +61,7 @@ jobs:
|
||||||
### Login, Pull, Extract
|
### Login, Pull, Extract
|
||||||
|
|
||||||
Using [docker/login-action][login-action] to authenticate with the GitHub
|
Using [docker/login-action][login-action] to authenticate with the GitHub
|
||||||
Package Registry to extract from a published Docker Image.
|
Container Registry to extract from a published Docker Image.
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
jobs:
|
jobs:
|
||||||
|
|
@ -69,15 +69,15 @@ jobs:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v2
|
- uses: actions/checkout@v2
|
||||||
- name: Login to GitHub Package Registry
|
- name: Login to GitHub Container Registry
|
||||||
uses: docker/login-action@v1
|
uses: docker/login-action@v1
|
||||||
with:
|
with:
|
||||||
registry: docker.pkg.github.com
|
registry: ghcr.io
|
||||||
username: ${{ github.repository_owner }}
|
username: ${{ github.repository_owner }}
|
||||||
password: ${{ github.token }}
|
password: ${{ secrets.GHCR_PAT }}
|
||||||
- uses: shrink/actions-docker-extract@v1
|
- uses: shrink/actions-docker-extract@v1
|
||||||
with:
|
with:
|
||||||
image: ${{ github.repository }}/example-image:latest
|
image: ghcr.io/${{ github.repository }}:latest
|
||||||
path: /app/.
|
path: /app/.
|
||||||
- name: Upload Dist
|
- name: Upload Dist
|
||||||
uses: actions/upload-artifact@v2
|
uses: actions/upload-artifact@v2
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue