diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml index 572e515..34cb11b 100644 --- a/.github/workflows/main.yml +++ b/.github/workflows/main.yml @@ -1,111 +1,16 @@ -### Application Level Image CI -### Dave Conroy - -name: 'build' +name: "manual_build_image" on: - push: - paths: - - '**' - - '!README.md' + workflow_dispatch: + inputs: + Manual Build: + description: 'Manual Build' + required: false + jobs: - docker: - runs-on: ubuntu-latest - steps: - - name: Checkout - uses: actions/checkout@v3 - - - name: Prepare - id: prep - run: | - DOCKER_IMAGE=${GITHUB_REPOSITORY/docker-/} - if [[ $GITHUB_REF == refs/heads/* ]]; then - if [[ $GITHUB_REF == refs/heads/*/* ]] ; then - BRANCH="${DOCKER_IMAGE}:$(echo $GITHUB_REF | sed "s|refs/heads/||g" | sed "s|/|-|g")" - else - BRANCH=${GITHUB_REF#refs/heads/} - fi - - case ${BRANCH} in - "main" | "master" ) - BRANCHTAG="${DOCKER_IMAGE}:latest" - ;; - "develop" ) - BRANCHTAG="${DOCKER_IMAGE}:develop" - ;; - * ) - if [ -n "${{ secrets.LATEST }}" ] ; then - if [ "${BRANCHTAG}" = "${{ secrets.LATEST }}" ]; then - BRANCHTAG="${DOCKER_IMAGE}:${BRANCH},${DOCKER_IMAGE}:${BRANCH}-latest,${DOCKER_IMAGE}:latest" - else - BRANCHTAG="${DOCKER_IMAGE}:${BRANCH},${DOCKER_IMAGE}:${BRANCH}-latest" - fi - else - BRANCHTAG="${DOCKER_IMAGE}:${BRANCH},${DOCKER_IMAGE}:${BRANCH}-latest" - fi - ;; - esac - fi - - - if [[ $GITHUB_REF == refs/tags/* ]]; then - GITTAG="${DOCKER_IMAGE}:$(echo $GITHUB_REF | sed 's|refs/tags/||g')" - fi - - if [ -n "${BRANCHTAG}" ] && [ -n "${GITTAG}" ]; then - TAGS=${BRANCHTAG},${GITTAG} - else - TAGS="${BRANCHTAG}${GITTAG}" - fi - - echo ::set-output name=tags::${TAGS} - echo ::set-output name=docker_image::${DOCKER_IMAGE} - - - name: Set up QEMU - uses: docker/setup-qemu-action@v2 - with: - platforms: all - - - name: Set up Docker Buildx - id: buildx - uses: docker/setup-buildx-action@v2 - - - name: Login to DockerHub - if: github.event_name != 'pull_request' - uses: docker/login-action@v2 - with: - username: ${{ secrets.DOCKER_USERNAME }} - password: ${{ secrets.DOCKER_PASSWORD }} - - - name: Label - id: Label - run: | - if [ -f "Dockerfile" ] ; then - sed -i "/FROM .*/a LABEL tiredofit.image.git_repository=\"https://github.com/${GITHUB_REPOSITORY}\"" Dockerfile - sed -i "/FROM .*/a LABEL tiredofit.image.git_commit=\"${GITHUB_SHA}\"" Dockerfile - sed -i "/FROM .*/a LABEL tiredofit.image.git_committed_by=\"${GITHUB_ACTOR}\"" Dockerfile - sed -i "/FROM .*/a LABEL tiredofit.image.image_build_date=\"$(date +'%Y-%m-%d %H:%M:%S')\"" Dockerfile - if [ -f "CHANGELOG.md" ] ; then - sed -i "/FROM .*/a LABEL tiredofit.db-backup.git_changelog_version=\"$(head -n1 ./CHANGELOG.md | awk '{print $2}')\"" Dockerfile - mkdir -p install/assets/.changelogs ; cp CHANGELOG.md install/assets/.changelogs/${GITHUB_REPOSITORY/\//_}.md - fi - - - if [[ $GITHUB_REF == refs/tags/* ]]; then - sed -i "/FROM .*/a LABEL tiredofit.image.git_tag=\"${GITHUB_REF#refs/tags/v}\"" Dockerfile - fi - - if [[ $GITHUB_REF == refs/heads/* ]]; then - sed -i "/FROM .*/a LABEL tiredofit.image.git_branch=\"${GITHUB_REF#refs/heads/}\"" Dockerfile - fi - fi - - - name: Build - uses: docker/build-push-action@v3 - with: - builder: ${{ steps.buildx.outputs.name }} - context: . - file: ./Dockerfile - platforms: linux/amd64,linux/arm/v7,linux/arm64 - push: true - tags: ${{ steps.prep.outputs.tags }} + build: + uses: tiredofit/github_actions/.github/workflows/default_amd64_armv7_arm64.yml@main + #uses: tiredofit/github_actions/.github/workflows/default_amd64.yml@main + #uses: tiredofit/github_actions/.github/workflows/default_amd64_armv7_arm64.yml@main + #uses: tiredofit/github_actions/.github/workflows/default_amd64_arm64.yml@main + secrets: inherit