-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy path.drone.yml
138 lines (124 loc) · 3.08 KB
/
.drone.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
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
# Copyright (c) 2017-present SIGHUP s.r.l All rights reserved.
# Use of this source code is governed by a BSD-style
# license that can be found in the LICENSE file.
# FIXME: Skipping for the moment, we need to add the license header to all the files.
# name: license
# kind: pipeline
# type: docker
# steps:
# - name: check
# image: docker.io/library/golang:1.16
# pull: always
# commands:
# - go get -u github.com/google/addlicense
# - addlicense -c "SIGHUP s.r.l" -v -l bsd -y "2017-present" --check .
# ---
name: policeman
kind: pipeline
type: docker
# FIXME: enable me when license check gets enabled.
# depends_on:
# - license
platform:
os: linux
arch: amd64
steps:
- name: lint
image: quay.io/sighup/policeman
pull: always
environment:
# Identifies false positives like missing 'selector'.
# Doing this is valid for Kustomize patches
VALIDATE_KUBERNETES_KUBEVAL: "false"
# Some duplicated code is intended.
VALIDATE_JSCPD: "false"
# hadolint already validated dockerfiles
VALIDATE_DOCKERFILE: "false"
# Disable natural language checks
VALIDATE_NATURAL_LANGUAGE: "false"
# Shellcheck gets confused with Jinja2 tempalates. Skipping all of them
FILTER_REGEX_EXCLUDE: (roles/.*/templates/.*j2)
depends_on:
- clone
---
name: release
kind: pipeline
type: docker
depends_on:
- policeman
platform:
os: linux
arch: amd64
trigger:
ref:
include:
- refs/tags/**
steps:
- name: prepare-tar-gz
image: alpine:latest
pull: always
depends_on: [clone]
commands:
- tar -zcvf fury-kubernetes-on-premises-${DRONE_TAG}.tar.gz roles/ LICENSE README.md
when:
ref:
include:
- refs/tags/**
- name: prepare-release-notes
image: quay.io/sighup/fury-release-notes-plugin:3.7_2.8.4
pull: always
depends_on: [clone]
settings:
release_notes_file_path: release-notes.md
when:
ref:
include:
- refs/tags/**
- name: publish-prerelease
image: plugins/github-release
pull: always
depends_on:
- prepare-tar-gz
- prepare-release-notes
settings:
api_key:
from_secret: github_token
file_exists: overwrite
files:
- fury-kubernetes-on-premises-${DRONE_TAG}.tar.gz
prerelease: true
overwrite: true
title: "Preview ${DRONE_TAG}"
note: release-notes.md
checksum:
- md5
- sha256
when:
ref:
include:
- refs/tags/v**-rc**
- name: publish-stable
image: plugins/github-release
pull: always
depends_on:
- prepare-tar-gz
- prepare-release-notes
settings:
api_key:
from_secret: github_token
file_exists: overwrite
files:
- fury-kubernetes-on-premises-${DRONE_TAG}.tar.gz
prerelease: false
overwrite: true
title: "Release ${DRONE_TAG}"
note: release-notes.md
checksum:
- md5
- sha256
when:
ref:
exclude:
- refs/tags/v**-rc**
include:
- refs/tags/v**