Merge pull request #2 from LCAS/gh_action #12
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: 'devcontainer CI' | |
on: | |
workflow_dispatch: | |
pull_request: | |
branches: | |
- main | |
push: | |
branches: | |
- main | |
tags: | |
- '*' | |
jobs: | |
build_devcontainer: | |
# only run for LCAS repositories | |
if: github.repository_owner == 'LCAS' || github.repository_owner == 'lcas' | |
runs-on: lcas | |
strategy: | |
matrix: | |
config: | |
- cuda-opengl | |
steps: | |
- name: Node Js | |
uses: actions/setup-node@v4 | |
with: | |
node-version: "^16.13.0 || >=18.0.0" | |
- name: Checkout from github | |
uses: actions/checkout@v3 | |
- name: extract the github reference | |
run: echo "BRANCH=${GITHUB_REF##*/}" >> $GITHUB_ENV | |
- name: "image name from repo name" | |
id: docker_image_name | |
run: echo "docker_image=${{ github.repository }}" | tr '[:upper:]' '[:lower:]' |sed 's/[^0-9,a-z,A-Z,=,_,\/]/-/g' >>${GITHUB_OUTPUT} | |
- name: Docker Login LCAS | |
# don't attempt to login for PRs | |
if: ${{ github.event_name != 'pull_request' }} | |
# You may pin to the exact commit or the version. | |
# uses: docker/login-action@f054a8b539a109f9f41c372932f1ae047eff08c9 | |
uses: docker/login-action@v2 | |
with: | |
# Server address of Docker registry. If not set then will default to Docker Hub | |
registry: lcas.lincoln.ac.uk | |
# Username used to log against the Docker registry | |
username: ${{ secrets.LCAS_REGISTRY_PUSHER }} | |
# Password or personal access token used to log against the Docker registry | |
password: ${{ secrets.LCAS_REGISTRY_TOKEN }} | |
- name: Build dev container task | |
if: ${{ github.event_name == 'pull_request' }} | |
uses: devcontainers/[email protected] | |
with: | |
imageName: lcas.lincoln.ac.uk/devcontainer/${{ steps.docker_image_name.outputs.docker_image }} | |
configFile: ./.devcontainer/${{ matrix.config }}/devcontainer.json | |
push: never | |
imageTag: ${{ matrix.config }}-${{ env.BRANCH }} | |
#runCmd: "bash .devcontainer/run-ci.sh" | |
- name: Build and push dev container image | |
if: ${{ github.event_name != 'pull_request' }} | |
uses: devcontainers/[email protected] | |
with: | |
imageName: lcas.lincoln.ac.uk/devcontainer/${{ steps.docker_image_name.outputs.docker_image }} | |
configFile: ./.devcontainer/${{ matrix.config }}/devcontainer.json | |
push: always | |
imageTag: ${{ matrix.config }}-${{ env.BRANCH }} | |
#runCmd: "bash .devcontainer/run-ci.sh" |