mirror of
https://github.com/super-linter/super-linter.git
synced 2024-11-25 10:10:56 -05:00
split it up (#1592)
This commit is contained in:
parent
c0a3b959cf
commit
0e740f3490
4 changed files with 303 additions and 63 deletions
158
.github/workflows/deploy-PROD-slim.yml
vendored
Normal file
158
.github/workflows/deploy-PROD-slim.yml
vendored
Normal file
|
@ -0,0 +1,158 @@
|
|||
---
|
||||
#########################
|
||||
#########################
|
||||
## Deploy Docker Image ##
|
||||
#########################
|
||||
#########################
|
||||
|
||||
#
|
||||
# Documentation:
|
||||
# https://help.github.com/en/articles/workflow-syntax-for-github-actions
|
||||
#
|
||||
|
||||
#######################################
|
||||
# Start the job on all push to master #
|
||||
#######################################
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- 'master'
|
||||
- 'main'
|
||||
|
||||
###############
|
||||
# Set the Job #
|
||||
###############
|
||||
jobs:
|
||||
build:
|
||||
# Name the Job
|
||||
name: Deploy Docker Image - PROD - slim
|
||||
# Set the agent to run on
|
||||
runs-on: ubuntu-latest
|
||||
# Only run this on the main repo
|
||||
if: github.repository == 'github/super-linter'
|
||||
##################
|
||||
# Load all steps #
|
||||
##################
|
||||
steps:
|
||||
##########################
|
||||
# Checkout the code base #
|
||||
##########################
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v2.3.4
|
||||
|
||||
########################
|
||||
# Get the current date #
|
||||
########################
|
||||
- name: Get current date
|
||||
run: echo "BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> ${GITHUB_ENV}
|
||||
|
||||
########################
|
||||
# Setup Docker build X #
|
||||
########################
|
||||
- name: Setup BuildX
|
||||
uses: docker/setup-buildx-action@v1.3.0
|
||||
|
||||
###############################
|
||||
# Login to DockerHub registry #
|
||||
###############################
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1.9.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
######################################
|
||||
# Login to GitHub Container registry #
|
||||
######################################
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v1.9.0
|
||||
with:
|
||||
registry: ghcr.io
|
||||
username: ${{ secrets.GCR_USERNAME }}
|
||||
password: ${{ secrets.GCR_TOKEN }}
|
||||
|
||||
#########################
|
||||
# Update deployment API #
|
||||
#########################
|
||||
- name: Start deployment
|
||||
uses: bobheadxi/deployments@v0.5.2
|
||||
id: deployment
|
||||
with:
|
||||
step: start
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
env: Production-SLIM
|
||||
|
||||
###########################################
|
||||
# Build and Push containers to registries #
|
||||
###########################################
|
||||
- name: Build and push - SLIM
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile-slim
|
||||
build-args: |
|
||||
BUILD_DATE=${{ env.BUILD_DATE }}
|
||||
BUILD_REVISION=${{ github.sha }}
|
||||
BUILD_VERSION=${{ github.sha }}
|
||||
push: true
|
||||
tags: |
|
||||
github/super-linter:slim-latest
|
||||
ghcr.io/github/super-linter:slim-latest
|
||||
|
||||
#######################################################
|
||||
# Create a GitHub Issue with the info from this build #
|
||||
#######################################################
|
||||
- name: Create GitHub Issue for failure
|
||||
if: failure()
|
||||
uses: actions/github-script@v4.0.2
|
||||
id: create-issue
|
||||
with:
|
||||
# https://octokit.github.io/rest.js/v18#issues-create
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
const create = await github.issues.create({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
title: "Failed to deploy to production",
|
||||
body: 'Automation has failed us!'
|
||||
})
|
||||
console.log('create', create)
|
||||
return create.data.number
|
||||
|
||||
############################
|
||||
# Assign admins on failure #
|
||||
############################
|
||||
- name: Assign Admins on failure
|
||||
uses: actions/github-script@v4.0.2
|
||||
if: failure()
|
||||
with:
|
||||
# https://octokit.github.io/rest.js/v18#issues-create
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
github.issues.addAssignees({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
issue_number: "${{ steps.create-issue.outputs.result }}",
|
||||
assignees: [
|
||||
'admiralawkbar',
|
||||
'jwiebalk',
|
||||
'IAmHughes',
|
||||
'nemchik',
|
||||
'Hanse00',
|
||||
'GaboFDC',
|
||||
'ferrarimarco'
|
||||
]
|
||||
})
|
||||
|
||||
#########################
|
||||
# Update Deployment API #
|
||||
#########################
|
||||
- name: Update deployment status
|
||||
uses: bobheadxi/deployments@v0.5.2
|
||||
if: always()
|
||||
with:
|
||||
step: finish
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
status: ${{ job.status }}
|
||||
deployment_id: ${{ steps.deployment.outputs.deployment_id }}
|
||||
env_url: https://github.com/github/super-linter
|
|
@ -25,7 +25,7 @@ on:
|
|||
jobs:
|
||||
build:
|
||||
# Name the Job
|
||||
name: Deploy Docker Image - PROD
|
||||
name: Deploy Docker Image - PROD - standard
|
||||
# Set the agent to run on
|
||||
runs-on: ubuntu-latest
|
||||
# Only run this on the main repo
|
||||
|
@ -99,34 +99,6 @@ jobs:
|
|||
github/super-linter:latest
|
||||
ghcr.io/github/super-linter:latest
|
||||
|
||||
###########################
|
||||
# Clean the docker daemon #
|
||||
###########################
|
||||
- name: Docker cleanup
|
||||
run: |
|
||||
docker images -f dangling=true | \
|
||||
tr '[:upper:]' '[:lower:]' | \
|
||||
awk '{print $3}' | \
|
||||
xargs docker rmi -f
|
||||
exit 0
|
||||
|
||||
###########################################
|
||||
# Build and Push containers to registries #
|
||||
###########################################
|
||||
- name: Build and push - SLIM
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile-slim
|
||||
build-args: |
|
||||
BUILD_DATE=${{ env.BUILD_DATE }}
|
||||
BUILD_REVISION=${{ github.sha }}
|
||||
BUILD_VERSION=${{ github.sha }}
|
||||
push: true
|
||||
tags: |
|
||||
github/super-linter:slim-latest
|
||||
ghcr.io/github/super-linter:slim-latest
|
||||
|
||||
#######################################################
|
||||
# Create a GitHub Issue with the info from this build #
|
||||
#######################################################
|
142
.github/workflows/deploy-RELEASE-slim.yml
vendored
Normal file
142
.github/workflows/deploy-RELEASE-slim.yml
vendored
Normal file
|
@ -0,0 +1,142 @@
|
|||
---
|
||||
#################################
|
||||
#################################
|
||||
## Deploy Release Docker Image ##
|
||||
#################################
|
||||
#################################
|
||||
|
||||
#
|
||||
# Documentation:
|
||||
# https://help.github.com/en/articles/workflow-syntax-for-github-actions
|
||||
#
|
||||
|
||||
#######################################
|
||||
# Start the job on all push to master #
|
||||
#######################################
|
||||
on:
|
||||
# Start when a pull request is opened
|
||||
issues:
|
||||
types: ['opened']
|
||||
|
||||
###############
|
||||
# Set the Job #
|
||||
###############
|
||||
jobs:
|
||||
deploy:
|
||||
# Name the Job
|
||||
name: Deploy Docker Image - Release - slim
|
||||
# Set the agent to run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
#####################################################################
|
||||
# Only run if Admin start job and it was the Release Issue template #
|
||||
#####################################################################
|
||||
if: contains(github.event.issue.title, 'Super-Linter Release:') &&
|
||||
github.actor == 'admiralawkbar' || github.actor == 'jwiebalk' ||
|
||||
github.actor == 'IAmHughes' || github.actor == 'nemchik' ||
|
||||
github.actor == 'Hanse00' || github.actor == 'github-actions' ||
|
||||
github.actor == 'GaboFDC' || github.actor == 'ferrarimarco'
|
||||
|
||||
##################
|
||||
# Load all steps #
|
||||
##################
|
||||
steps:
|
||||
##########################
|
||||
# Checkout the code base #
|
||||
##########################
|
||||
- name: Checkout Code
|
||||
uses: actions/checkout@v2.3.4
|
||||
|
||||
#######################################################
|
||||
# Create a GitHub Issue with the info from this build #
|
||||
#######################################################
|
||||
- name: Update GitHub Issue
|
||||
uses: actions/github-script@v4.0.2
|
||||
id: update-issue
|
||||
with:
|
||||
# https://octokit.github.io/rest.js/v18#issues-create
|
||||
github-token: ${{secrets.GITHUB_TOKEN}}
|
||||
script: |
|
||||
github.issues.createComment({
|
||||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
issue_number: "${{ github.event.issue.number }}",
|
||||
title: "Deploying slim Super-Linter Release to Production",
|
||||
body: 'Currently deploying the Release...'
|
||||
})
|
||||
|
||||
#########################
|
||||
# Update deployment API #
|
||||
#########################
|
||||
- name: Start deployment
|
||||
uses: bobheadxi/deployments@v0.5.2
|
||||
id: deployment
|
||||
with:
|
||||
step: start
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
env: Release-SLIM
|
||||
|
||||
########################
|
||||
# Get the current date #
|
||||
########################
|
||||
- name: Get current date
|
||||
run: echo "BUILD_DATE=$(date -u +'%Y-%m-%dT%H:%M:%SZ')" >> ${GITHUB_ENV}
|
||||
|
||||
########################
|
||||
# Setup Docker build X #
|
||||
########################
|
||||
- name: Setup BuildX
|
||||
uses: docker/setup-buildx-action@v1.3.0
|
||||
|
||||
###############################
|
||||
# Login to DockerHub registry #
|
||||
###############################
|
||||
- name: Login to DockerHub
|
||||
uses: docker/login-action@v1.9.0
|
||||
with:
|
||||
username: ${{ secrets.DOCKER_USERNAME }}
|
||||
password: ${{ secrets.DOCKER_PASSWORD }}
|
||||
|
||||
######################################
|
||||
# Login to GitHub Container registry #
|
||||
######################################
|
||||
- name: Login to GitHub Container Registry
|
||||
uses: docker/login-action@v1.9.0
|
||||
with:
|
||||
username: ${{ secrets.GCR_USERNAME }}
|
||||
password: ${{ secrets.GCR_TOKEN }}
|
||||
registry: ghcr.io
|
||||
|
||||
###########################################
|
||||
# Build and Push containers to registries #
|
||||
###########################################
|
||||
- name: Build and push - SLIM
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile-slim
|
||||
build-args: |
|
||||
BUILD_DATE=${{ env.BUILD_DATE }}
|
||||
BUILD_REVISION=${{ github.sha }}
|
||||
BUILD_VERSION=${{ github.sha }}
|
||||
push: true
|
||||
tags: |
|
||||
github/super-linter:slim-latest
|
||||
github/super-linter:slim-v4
|
||||
github/super-linter:slim-${{ env.RELEASE_VERSION }}
|
||||
ghcr.io/github/super-linter:slim-latest
|
||||
ghcr.io/github/super-linter:slim-v4
|
||||
ghcr.io/github/super-linter:slim-${{ env.RELEASE_VERSION }}
|
||||
|
||||
#########################
|
||||
# Update Deployment API #
|
||||
#########################
|
||||
- name: Update deployment status
|
||||
uses: bobheadxi/deployments@v0.5.2
|
||||
if: always()
|
||||
with:
|
||||
step: finish
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
status: ${{ job.status }}
|
||||
deployment_id: ${{ steps.deployment.outputs.deployment_id }}
|
||||
env_url: https://github.com/github/super-linter/releases/tag/${{ env.RELEASE_VERSION }}
|
|
@ -24,7 +24,7 @@ on:
|
|||
jobs:
|
||||
deploy:
|
||||
# Name the Job
|
||||
name: Deploy Docker Image - Release
|
||||
name: Deploy Docker Image - Release - standard
|
||||
# Set the agent to run on
|
||||
runs-on: ubuntu-latest
|
||||
|
||||
|
@ -61,7 +61,7 @@ jobs:
|
|||
owner: context.repo.owner,
|
||||
repo: context.repo.repo,
|
||||
issue_number: "${{ github.event.issue.number }}",
|
||||
title: "Deploying Super-Linter Release to Production",
|
||||
title: "Deploying Super-Linter standard Release to Production",
|
||||
body: 'Currently deploying the Release...'
|
||||
})
|
||||
|
||||
|
@ -144,38 +144,6 @@ jobs:
|
|||
ghcr.io/github/super-linter:v4
|
||||
ghcr.io/github/super-linter:${{ env.RELEASE_VERSION }}
|
||||
|
||||
###########################
|
||||
# Clean the docker daemon #
|
||||
###########################
|
||||
- name: Docker cleanup
|
||||
run: |
|
||||
docker images -f dangling=true | \
|
||||
tr '[:upper:]' '[:lower:]' | \
|
||||
awk '{print $3}' | \
|
||||
xargs docker rmi -f
|
||||
exit 0
|
||||
|
||||
###########################################
|
||||
# Build and Push containers to registries #
|
||||
###########################################
|
||||
- name: Build and push - SLIM
|
||||
uses: docker/build-push-action@v2.4.0
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile-slim
|
||||
build-args: |
|
||||
BUILD_DATE=${{ env.BUILD_DATE }}
|
||||
BUILD_REVISION=${{ github.sha }}
|
||||
BUILD_VERSION=${{ github.sha }}
|
||||
push: true
|
||||
tags: |
|
||||
github/super-linter:slim-latest
|
||||
github/super-linter:slim-v4
|
||||
github/super-linter:slim-${{ env.RELEASE_VERSION }}
|
||||
ghcr.io/github/super-linter:slim-latest
|
||||
ghcr.io/github/super-linter:slim-v4
|
||||
ghcr.io/github/super-linter:slim-${{ env.RELEASE_VERSION }}
|
||||
|
||||
########################
|
||||
# Get the current date #
|
||||
########################
|
Loading…
Reference in a new issue