forked from wangyoucao577/go-release-action
-
Notifications
You must be signed in to change notification settings - Fork 1
/
action.yml
134 lines (132 loc) · 3.97 KB
/
action.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
# action.yml
name: 'Go Release Binaries With Signify'
author: 'Yongsheng Xu <chuxdesign@hotmail.com>'
description: 'Build and Release Go Binaries to GitHub Release Assets'
inputs:
github_token:
description: 'GITHUB_TOKEN for uploading releases to Github asserts.'
required: true
default: ''
goos:
description: 'GOOS is the running programs operating system target: one of darwin, freebsd, linux, and so on.'
required: true
default: ''
goarch:
description: 'GOARCH is the running programs architecture target: one of 386, amd64, arm, s390x, and so on.'
required: true
default: ''
goversion:
description: 'The `Go` compiler version.'
required: false
default: ''
build_flags:
description: 'Additional arguments to pass the go build command.'
required: false
default: ''
ldflags:
description: 'Values to provide to the -ldflags argument'
required: false
default: ''
project_path:
description: 'Where to run `go build .`'
required: false
default: '.'
source_files:
description: 'Source files to be build'
required: false
default: ''
binary_name:
description: 'Specify another binary name if do not want to use repository basename'
required: false
default: ''
pre_command:
description: 'Extra command that will be executed before `go build`, may for solving dependency'
required: false
default: ''
build_command:
description: 'The actual command to build binary, typically `go build`.'
required: false
default: 'go build'
executable_compression:
description: 'Compression executable binary by some third-party tools. Only `upx` is supported at the moment.'
required: false
default: ''
extra_files:
description: 'Extra files that will be packaged into artifacts either.'
required: false
default: ''
md5sum:
description: 'Publish `.md5` along with artifacts.'
required: false
default: 'FALSE'
signify:
description: 'Publish `.sig` along with artifacts.'
required: false
default: 'TRUE'
signify_sec_key:
description: 'Private key used by signify, pass this by secrets'
required: false
default: ''
signify_sec_key_pass:
description: 'Passphrase for private key protection'
required: false
default: ''
qingcloud:
description: 'Upload to qingcloud'
required: false
default: 'FALSE'
qingcloud_config:
description: 'Qingcloud config yaml, if not null, it will upload the release to qingcloud bucket'
required: false
default: ''
qingcloud_bucket:
description: 'Qingcloud bucket to upload'
required: false
default: 'github'
sha256sum:
description: 'Publish `.sha256` along with artifacts.'
required: false
default: 'FALSE'
release_tag:
description: 'Upload binaries to specified release page that indicated by Git tag.'
required: false
default: ''
overwrite:
description: "Overwrite asset if it's already exist."
required: false
default: 'FALSE'
asset_name:
description: 'Customize asset name if do not want to use the default format.'
required: false
default: ''
runs:
using: 'docker'
image: 'Dockerfile'
args:
- ${{ inputs.github_token }}
- ${{ inputs.goos }}
- ${{ inputs.goarch }}
- ${{ inputs.goversion }}
- ${{ inputs.build_flags}}
- ${{ inputs.ldflags }}
- ${{ inputs.project_path }}
- ${{ inputs.source_files }}
- ${{ inputs.binary_name }}
- ${{ inputs.pre_command }}
- ${{ inputs.build_command }}
- ${{ inputs.executable_compression }}
- ${{ inputs.extra_files }}
- ${{ inputs.md5sum }}
- ${{ inputs.signify }}
- ${{ inputs.signify_sec_key }}
- ${{ inputs.signify_sec_key_pass }}
- ${{ inputs.qingcloud }}
- ${{ inputs.qingcloud_config }}
- ${{ inputs.qingcloud_bucket }}
- ${{ inputs.sha256sum }}
- ${{ inputs.release_tag }}
- ${{ inputs.overwrite }}
- ${{ inputs.asset_name }}
branding:
icon: 'package'
color: 'blue'