forked from szandany/Liquibase_Snowflake_Example
-
Notifications
You must be signed in to change notification settings - Fork 1
115 lines (94 loc) · 3.01 KB
/
liquibase_rollback_targeted_workflow.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
# This is a basic workflow to help you get started with Actions
name: rollback_changes_targeted
# Controls when the action will run. Triggers the workflow on push or pull request
# events but only for the main branch
on:
workflow_dispatch:
# push:
# branches: [ main ]
# pull_request:
# branches: [ main ]
inputs:
author:
description: 'Author'
required: true
default: 'liquibase-docs'
id:
description: 'ID'
required: true
default: 'createView-example2'
path:
description: 'Path'
required: true
default: 'Changelogs/changelog.sql'
env:
LIQUIBASE_PRO_LICENSE_KEY: ${{ secrets.LIQUIBASE_PRO_LICENSE_KEY }}
LIQUIBASE_COMMAND_URL: ${{ secrets.LIQUIBASE_COMMAND_URL }}
LIQUIBASE_COMMAND_USERNAME: ${{ secrets.LIQUIBASE_COMMAND_USERNAME }}
LIQUIBASE_COMMAND_PASSWORD: ${{ secrets.LIQUIBASE_COMMAND_PASSWORD }}
LIQUIBASE_COMMAND_CHANGELOG_FILE: ${{ secrets.LIQUIBASE_COMMAND_CHANGELOG_FILE }}
LIQUIBASE_REPORTS_ENABLED: "TRUE"
LIQUIBASE_LOG_LEVEL: "INFO"
jobs:
Build_Job:
runs-on: ubuntu-latest
environment:
name: DEV
steps:
- uses: actions/checkout@v4
- name: Rolling back DEV
uses: docker://liquibase/liquibase:4.28.0
with:
args: rollbackOneChangeset --changeset-author=${{ github.event.inputs.author }} --changeset-id=${{ github.event.inputs.id }} --changeset-path=${{ github.event.inputs.path }} --force
###
### Gather logs
###
- name: Gather reports DEV
if: success() || failure()
uses: actions/upload-artifact@v4
with:
name: rollback1-reports-DEV
path: |
**/Rollback*.html
Test_Job:
needs: Build_Job
runs-on: ubuntu-latest
environment:
name: TEST
steps:
- uses: actions/checkout@v4
- name: Rolling back TEST
uses: docker://liquibase/liquibase:4.28.0
with:
args: rollbackOneChangeset --changeset-author=${{ github.event.inputs.author }} --changeset-id=${{ github.event.inputs.id }} --changeset-path=${{ github.event.inputs.path }} --force
###
### Gather logs
###
- name: Gather reports TEST
if: success() || failure()
uses: actions/upload-artifact@v4
with:
name: rollback1-reports-TEST
path: |
**/Rollback*.html
Deploy_Prod_Job:
needs: Test_Job
runs-on: ubuntu-latest
environment:
name: PROD
steps:
- uses: actions/checkout@v4
- name: Rolling back PROD
uses: docker://liquibase/liquibase:4.28.0
with:
args: rollbackOneChangeset --changeset-author=${{ github.event.inputs.author }} --changeset-id=${{ github.event.inputs.id }} --changeset-path=${{ github.event.inputs.path }} --force
###
### Gather logs
###
- name: Gather reports PROD
if: success() || failure()
uses: actions/upload-artifact@v4
with:
name: rollback1-reports-PROD
path: |
**/rollback*.html