Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Miguel Palhas / @naps62
Slide 2
Slide 2 text
PS: We're hiring!!
Slide 3
Slide 3 text
No content
Slide 4
Slide 4 text
git push
Slide 5
Slide 5 text
Not everything is a commit
Slide 6
Slide 6 text
No content
Slide 7
Slide 7 text
@ Utrust Multiple live environments: Development Staging/QA Sandbox/Production Deployed ASAP ~weekly ~weekly'ish
Slide 8
Slide 8 text
git checkout -b release-2020-01-14
Slide 9
Slide 9 text
git push deploy Wait... So only developers can deploy??
Slide 10
Slide 10 text
- approval_step type: approval requires: - approval_step workflows: 1 deploy: 2 jobs: 3 4 5 6 - deploy: 7 8 9
Slide 11
Slide 11 text
No content
Slide 12
Slide 12 text
No content
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
name: Github Action Example on: push: branches: - master jobs: ... 1 2 3 4 5 6 7 8 9 Triggers
Slide 15
Slide 15 text
name: Github Action Example on: push: pull_request: types: [opened, synchronize] issue_comment: types: [created] jobs: ... 1 2 3 4 5 6 7 8 9 10 11 12 13 Triggers
Slide 16
Slide 16 text
No content
Slide 17
Slide 17 text
name: Github Action Example jobs: test: runs-on: ubuntu-latest container: node:9.11.2 steps: - name: Hello run: echo "Hello World" 1 2 3 4 5 6 7 8 9 10 Commands
Slide 18
Slide 18 text
name: Deploy on: [deployment] jobs: test: steps: - name: Checkout run: actions/checkout@v1 with: ref: ${{ github.event.deployment.ref }} 1 2 3 4 5 6 7 8 9 10 11 Reusable Actions
Slide 19
Slide 19 text
steps: - name: Trigger Deploy uses: actions/
[email protected]
with: script: | console.log("wow, javascript!") await github.repos.createDeployment({ # ... }) 1 2 3 4 5 6 7 8 9 10 11 12 13 github-script
Slide 20
Slide 20 text
1. Consumes the Github API, not just `git push` 2. More intuitive flows for our team 3. Powerful reusability (JS / Docker actions)
Slide 21
Slide 21 text
Watch: ChatOps at GitHub - Jesse Newland RubyFuza 2013
Slide 22
Slide 22 text
No content
Slide 23
Slide 23 text
1. Preserves history 2. Live documentation 3. Full transparency
Slide 24
Slide 24 text
No content
Slide 25
Slide 25 text
Miguel Palhas / @naps62