-
Notifications
You must be signed in to change notification settings - Fork 3
/
example-smuggler.yml
72 lines (55 loc) · 2.21 KB
/
example-smuggler.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
commands:
check: &common_script |
cat <<EOF 1>&2
Thank you for using smuggler!
NOTE: The current default implementation will just FAIL, in order
to print this message :). Define the '${SMUGGLER_COMMAND}' command.
The '${SMUGGLER_COMMAND}' command is not defined. You can define one this way:
- name: ${RESOURCE_NAME:-foo}
type: smuggler
source:
smuggler_debug: true # For debugging, remove later
commands:
${SMUGGLER_COMMAND}: |
# Write here your logic
version="\$(curl -qs http://company.com/service | jq .a_value)"
echo "\${version}" > \${SMUGGLER_OUTPUT_DIR}/versions
param_1: value
param_2: value
Parameters would be passed as 'SMUGGLER_<param>' variables.
You currently have these variables available:
$(env | sed '/^PATH=/d;/^SHLVL=/d;/HOME=/d;/^_=/d;/^no_proxy=/d;/^USER=/d;/^PWD=/d;s/^/ /')
EOF
case ${SMUGGLER_COMMAND} in
check)
cat <<EOF 1>&2
To report back your versions found you can:
- write the versions as plaintext lines in \${SMUGGLER_OUTPUT_DIR}/versions
- write the metadata as key=value pairs in \${SMUGGLER_OUTPUT_DIR}/metadata
- or print a valid json as stdout as in https://concourse.ci/implementing-resources.html
EOF
;;
in|out)
cat <<EOF 1>&2
To report back the new version and metadata you can:
- write the versions as plaintext lines in \${SMUGGLER_OUTPUT_DIR}/versions
- write the metadata as key=value pairs in \${SMUGGLER_OUTPUT_DIR}/metadata
- or print a valid json as stdout as in https://concourse.ci/implementing-resources.html
EOF
esac
case ${SMUGGLER_COMMAND} in
in)
cat <<EOF 1>&2
You can find the requested version in the variables \${SMUGGLER_VERSION_<key>}
Write the retrieved resource data into \${SMUGGLER_DESTINATION_DIR}
EOF
;;
out)
cat <<EOF 1>&2
You can find the requested version in the variables \${SMUGGLER_VERSION_<key>}
Read the outputs from previous steps in the job from \${SMUGGLER_SOURCES_DIR}
EOF
esac
exit 1
in: *common_script
out: *common_script