-
Notifications
You must be signed in to change notification settings - Fork 3
83 lines (75 loc) · 2.67 KB
/
release.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
# --------------------------------------------------------------
# WARNING: This file is managed by centralized sync management system.
# Do not edit this file directly, your changes will be overwritten.
# See https://github.com/orange-cloudavenue/workflows for more information.
# --------------------------------------------------------------
name: Release
on:
workflow_dispatch:
inputs:
tag:
description: 'Tag version number (Eg: v0.1.0)'
required: true
type: string
permissions:
contents: write
jobs:
pre-check:
name: Pre-Check
uses: orange-cloudavenue/workflows/.github/workflows/tag_check-tag.yml@main
with:
tag: ${{ github.event.inputs.tag }}
secrets:
TOKEN: ${{ secrets.CHANGELOG_PAT }}
golang-ci-lint:
needs: [pre-check]
name: "Lint"
uses: orange-cloudavenue/workflows/.github/workflows/go_golangci-lint.yml@main
tests:
needs: [pre-check]
name: "Unit Tests"
uses: orange-cloudavenue/workflows/.github/workflows/go_unit-test-tf-provider.yml@main
secrets:
CLOUDAVENUE_ORG: ${{ secrets.CLOUDAVENUE_ORG }}
CLOUDAVENUE_USER: ${{ secrets.CLOUDAVENUE_USER }}
CLOUDAVENUE_PASSWORD: ${{ secrets.CLOUDAVENUE_PASSWORD }}
CLOUDAVENUE_VDC: ${{ secrets.CLOUDAVENUE_VDC }}
tag:
needs: [golang-ci-lint, tests]
name: Tag
uses: orange-cloudavenue/workflows/.github/workflows/tag_create-tag.yml@main
with:
tag: ${{ github.event.inputs.tag }}
secrets:
TOKEN: ${{ secrets.CHANGELOG_PAT }}
release-notes:
needs: [tag]
name: Release Notes
uses: orange-cloudavenue/workflows/.github/workflows/release_generate-release-note.yml@main
with:
tag: ${{ github.event.inputs.tag }}
secrets:
TOKEN: ${{ secrets.CHANGELOG_PAT }}
make-release:
needs: [release-notes]
uses: orange-cloudavenue/workflows/.github/workflows/release_publish-terraform-provider.yml@main
with:
tag: ${{ github.event.inputs.tag }}
artifact-name: ${{ needs.release-notes.outputs.artifact-name }}
secrets:
TOKEN: ${{ secrets.CHANGELOG_PAT }}
GPG_PRIVATE_KEY: ${{ secrets.GPG_PRIVATE_KEY }}
PASSPHRASE: ${{ secrets.PASSPHRASE }}
METRICS_TARGET: ${{ secrets.METRICS_TARGET }}
METRICS_TOKEN: ${{ secrets.METRICS_TOKEN }}
changelog-newversion:
needs: [make-release]
uses: orange-cloudavenue/workflows/.github/workflows/changelog_generate-new-version.yml@main
with:
tag: ${{ github.event.inputs.tag }}
secrets:
TOKEN: ${{ secrets.CHANGELOG_PAT }}
publish-doc:
needs: [make-release]
name: "Publish Documentation"
uses: orange-cloudavenue/workflows/.github/workflows/doc_publish.yml@main