Open cvarjao opened 5 years ago
https://blog.kontena.io/deploying-to-kubernetes-from-github-actions/
https://developer.github.com/actions/creating-github-actions/accessing-the-runtime-environment/
Sample Pipeline
workflow "Build and Deploy to OpenShift" {
on = "push"
resolves = ["Rollout Deployment"]
}
action "Build Image" { uses = "actions/docker/tag@86ff551d26008267bb89ac11198ba7f1d807b699" runs = "docker build -t beer-selector ." }
action "Tag image" { uses = "actions/docker/cli@86ff551d26008267bb89ac11198ba7f1d807b699" runs = "docker tag beer-selector docker-registry.lab.pathfinder.gov.bc.ca/shea-argo/beer-selector:latest" needs = ["Build Image"] }
action "Auth to OpenShift registry" { uses = "actions/docker/login@master" needs = ["Tag image"] secrets = ["DOCKER_PASSWORD", "DOCKER_USERNAME", "DOCKER_REGISTRY_URL"] }
action "Push image" { uses = "actions/docker/cli@86ff551d26008267bb89ac11198ba7f1d807b699" runs = "docker push docker-registry.lab.pathfinder.gov.bc.ca/shea-argo/beer-selector:latest" needs = ["Auth to OpenShift registry"] }
action "OpenShift Login" {
uses = "stewartshea/jenkins2-with-docker@master"
secrets = ["DOCKER_PASSWORD", "OPENSHIFT_URL"]
needs = ["Push image"]
}
action "Rollout Deployment" { uses = "stewartshea/jenkins2-with-docker@master" secrets = ["DOCKER_PASSWORD", "OPENSHIFT_URL"] runs = "oc --config=/github/home/workspace/kube rollout latest beer-selector" needs = ["OpenShift Login"]
}
Platform Services: 6/10
Development Team: 8/10
format_version: 3
pipelines:
test:
group: defaultGroup
label_template: ${COUNT}
lock_behavior: none
display_order: -1
materials:
git:
git: https://github.com/BCDevOps/platform-services
shallow_clone: true
auto_update: true
branch: status-page
stages:
- uninstall-dev:
fetch_materials: true
keep_artifacts: false
clean_workspace: false
approval:
type: success
jobs:
cleanDev:
# elastic_profile_id: standard-agent
timeout: 0
tasks:
- exec:
command: /bin/bash
arguments:
- -c
- apps/statuspage/.gocd/uninstall.sh
run_if: passed
- install-dev:
fetch_materials: true
keep_artifacts: false
clean_workspace: false
approval:
type: success
jobs:
deployDev:
# elastic_profile_id: standard-agent
timeout: 0
tasks:
- exec:
command: /bin/bash
arguments:
- -c
- apps/statuspage/.gocd/install.sh
run_if: passed
- configure-dev:
fetch_materials: true
keep_artifacts: false
clean_workspace: false
approval:
type: success
jobs:
deployDev:
# elastic_profile_id: standard-agent
timeout: 0
tasks:
- exec:
command: /bin/bash
arguments:
- -c
- apps/statuspage/.gocd/configure.sh
run_if: passed
Presentation video here.
step
to report metrics to whatever we have to collect them.Development Team: 9/10
Platform Services: ?/10
Development Team: 10/10
Criteria
Use Cases
10 Minutes Demo/Show
Due Date: July 2nd