-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathsample-pipeline.yml
104 lines (102 loc) · 3.58 KB
/
sample-pipeline.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
# Yennefer pipeline yaml
# Pipeline/Run:
# - Create/Update: Initializing|Running|Completed
# - Delete: Stopping|Deleting|Deleted
# Task/Job: pipeline의 하위에 존재한다.
# - Create: Initializing|Waiting|Running|Completed
# - Update/Delete: Initializing|Waiting|Running|Completed 새로운 pipeline을 통해 run을 만드는 개념
apiVersion: pipeline.1eedaegon.github.io/v1
kind: Pipeline
metadata:
namespace: pipeline
name: pipeline-chain-test
spec:
schedule: # Schedule의 cron과 runAfter/runBefore가 동시에 걸리면 경고를 띄운다.
# => after는 하위 시간 무시, before는 상위가 나를 무시
scheduleDate: "*/1 * * * * *" # */1 * * * * 또는 1d, 1w, 1M
endDate: "2024-08-30" # "2024-06-30:00:00:00+0900"
# (입력 받을 때)UTC+9를 기본으로 하며, 플랫폼 위치(리전)을 기준으로 표출하되, 입력하는 시간은 변환되어 저장되어야한다.
volumes:
- name: yennefer-something # 이미 있으면 생성하지 않고 사용
capacity: 2G # 최대값 # Requests: 2Gi 최소값, csi드라이버 마다 구현이 달라서 통제가 어려움
storage: standard
- name: other-something # 이미 있으면 생성하지 않고 사용
capacity: 2G # 최대값 # Requests: 2Gi 최소값, csi드라이버 마다 구현이 달라서 통제가 어려움
storage: standard
# 이미 있으면 생성하지 않고 사용
trigger: false
historyLimit:
amount: 10
runBefore: [] # runBefore를 걸었을 때 tasks/pipeline에 해당 이름이 없으면 경고를 띄운다.
inputs: []
outputs: []
resource:
cpu: 200m
memory: 100Mi
tasks:
- name: pipeline-init-pipeline # import task type without image version
image: amazon/aws-cli
schedule:
scheduleDate: 1d
trigger: false
args:
- --version
- if [ -z "$SAMPLE" ]; then echo "no" else echo $SAMPLE fi
# resource:
# cpu: 600m
# memory: 200Mi
# gpu:
# type: nvidia # gpu를 걸고 타입을 걸었을 때 node label에 없으면 경고를 띄운다.
# amount: 2
env:
SAMPLE: hello
SAMPLE2: world
inputs: # runBefore와 inputs가 동시에 걸리고 runBefore의 task에 output이 없으면 경고를 띄운다.
- yennefer-something/input # RO
- other-something/other-input
outputs:
- yennefer-something/init-output # RWX
- # inline task type because define image
name: import-s3
image: amazon/aws-cli
args:
- --version
- echo $SAMPLE
- if [ -z "$SAMPLE" ]; then echo "no" else echo $SAMPLE fi
# resource:
# cpu: 500m
# memory: 200Mi
# gpu:
# type: nvidia # gpu를 걸고 타입을 걸었을 때 node label에 없으면 경고를 띄운다.
# amount: 2
env:
SAMPLE: wow!
SAMPLE2: world
runBefore:
- pipeline-init-pipeline
- name: transform-data
image: amazon/aws-cli
trigger: false
args:
- --version
- if [ -z "$SAMPLE" ]; then echo "no" else echo $SAMPLE fi
# resource:
# cpu: 500m
# memory: 200Mi
# gpu:
# type: nvidia # gpu를 걸고 타입을 걸었을 때 node label에 없으면 경고를 띄운다.
# amount: 2
env:
SAMPLE: hello
SAMPLE2: world
runBefore:
- import-s3
inputs:
- yennefer-something/init-output # runBefore와 inputs가 동시에 걸리고 runBefore의 task에 output이 없으면 경고를 띄운다.
outputs:
- other-something/transfrom-output
# status:
# runs: 10
# createDate: 2024-05-13:16:00:00
# lastUpdateDate: 2024-05-13:17:00:00
#