Skip to content

NAStool Docker

NAStool Docker #85

Workflow file for this run

name: NAStool Docker
on:
workflow_dispatch:
inputs:
docker_username:
description: 'docker user name'
required: true
default: ''
docker_password:
description: 'docker user password'
required: true
default: ''
branches:
- master
paths:
- version.py
- .github/workflows/build.yml
- package_list.txt
- requirements.txt
- docker/Dockerfile
jobs:
build:
runs-on: ubuntu-latest
name: Build Docker Image
steps:
-
name: Checkout
uses: actions/checkout@master
-
name: Release version
id: release_version
run: |
app_version=$(cat version.py |sed -ne "s/APP_VERSION\s=\s'v\(.*\)'/\1/gp")
echo "app_version=$app_version" >> $GITHUB_ENV
-
name: Set Up QEMU
uses: docker/setup-qemu-action@v1
-
name: Set Up Buildx
uses: docker/setup-buildx-action@v1
-
name: Login DockerHub
uses: docker/login-action@v1
with:
username: ${{ github.event.inputs.docker_username }}
password: ${{ github.event.inputs.docker_password }}
- name: Init Python 3.10.10
uses: actions/setup-python@v4
with:
python-version: '3.10.10'
-
name: Build Image
uses: docker/build-push-action@v2
with:
context: docker
file: docker/Dockerfile
platforms: |
linux/amd64
linux/arm64
push: true
tags: |
${{ github.event.inputs.docker_username }}/nas-tools:latest
${{ github.event.inputs.docker_username }}/nas-tools:${{ env.app_version }}