Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
18 changes: 18 additions & 0 deletions .eslintrc.cjs
Original file line number Diff line number Diff line change
Expand Up @@ -5,4 +5,22 @@ const cfg = {
const testOverrides = cfg.overrides.find((ovr) => ovr.files.find((f) => f.includes('.test.ts')));
testOverrides.rules['@typescript-eslint/no-floating-promises'] = 'off';

cfg.overrides.push({
/** Overrides for YAML */
files: ['*.yaml', '*.yml'],
extends: ['plugin:yml/standard'],
rules: {
// Prettier uses single quotes so be consistent
'yml/quotes': ['error', { prefer: 'single' }],
// Prettier will reformat this back into a single line
'yml/block-sequence-hyphen-indicator-newline': ['off'],
// Prettier will sometimes convert these to multiline, so be safe and always use multi
'yml/block-sequence': ['error', { singleline: 'always' }],

// Force string values to be quoted
'yml/plain-scalar': ['error', 'never', { overrides: { mappingKey: 'always' } }],
},
parser: 'yaml-eslint-parser',
});

module.exports = cfg;
8 changes: 4 additions & 4 deletions cdk8s.yaml
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
app: npx tsx infra/cdk8s.ts
language: typescript
app: 'npx tsx infra/cdk8s.ts'
language: 'typescript'
imports:
- https://raw.githubusercontent.com/aws/karpenter/main/pkg/apis/crds/karpenter.sh_provisioners.yaml
- https://raw.githubusercontent.com/aws/karpenter/main/pkg/apis/crds/karpenter.k8s.aws_awsnodetemplates.yaml
- 'https://raw.githubusercontent.com/aws/karpenter/main/pkg/apis/crds/karpenter.sh_provisioners.yaml'
- 'https://raw.githubusercontent.com/aws/karpenter/main/pkg/apis/crds/karpenter.k8s.aws_awsnodetemplates.yaml'
24 changes: 13 additions & 11 deletions docs/training/examples/wf_hello_world.yaml
Original file line number Diff line number Diff line change
@@ -1,21 +1,23 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Workflow
apiVersion: 'argoproj.io/v1alpha1'
kind: 'Workflow'
metadata:
generateName: test-hello-world-
namespace: argo
generateName: 'test-hello-world-'
namespace: 'argo'
spec:
nodeSelector:
karpenter.sh/capacity-type: 'spot'
entrypoint: main
entrypoint: 'main'
templates:
- name: main
- name: 'main'
dag:
tasks:
- name: say-hello-task
template: say-hello-template
- name: say-hello-template
- name: 'say-hello-task'
template: 'say-hello-template'
- name: 'say-hello-template'
container:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/topo-imagery:v3'
command: [echo]
args: ['hello world']
command:
- 'echo'
args:
- 'hello world'
30 changes: 16 additions & 14 deletions docs/training/examples/wf_hello_world_args.yaml
Original file line number Diff line number Diff line change
@@ -1,32 +1,34 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Workflow
apiVersion: 'argoproj.io/v1alpha1'
kind: 'Workflow'
metadata:
generateName: test-hello-world-args-
namespace: argo
generateName: 'test-hello-world-args-'
namespace: 'argo'
spec:
nodeSelector:
karpenter.sh/capacity-type: 'spot'
entrypoint: main
entrypoint: 'main'
arguments:
parameters:
- name: message
- name: 'message'
value: 'hello world'
templates:
- name: main
- name: 'main'
dag:
tasks:
- name: say-hello-task
template: say-hello-template
- name: 'say-hello-task'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: '{{workflow.parameters.message}}'
- name: say-hello-template
- name: 'say-hello-template'
inputs:
parameters:
- name: message
- name: 'message'
container:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/topo-imagery:v3'
command: [echo]
args: ['{{inputs.parameters.message}}']
command:
- 'echo'
args:
- '{{inputs.parameters.message}}'
38 changes: 20 additions & 18 deletions docs/training/examples/wf_hello_world_args_tasks.yaml
Original file line number Diff line number Diff line change
@@ -1,40 +1,42 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Workflow
apiVersion: 'argoproj.io/v1alpha1'
kind: 'Workflow'
metadata:
generateName: test-hello-world-args-tasks-
namespace: argo
generateName: 'test-hello-world-args-tasks-'
namespace: 'argo'
spec:
nodeSelector:
karpenter.sh/capacity-type: 'spot'
entrypoint: main
entrypoint: 'main'
arguments:
parameters:
- name: message1
- name: 'message1'
value: 'hello world 1'
- name: message2
- name: 'message2'
value: 'hello world 2'
templates:
- name: main
- name: 'main'
dag:
tasks:
- name: say-hello-task1
template: say-hello-template
- name: 'say-hello-task1'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: '{{workflow.parameters.message1}}'
- name: say-hello-task2
template: say-hello-template
- name: 'say-hello-task2'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: '{{workflow.parameters.message2}}'
- name: say-hello-template
- name: 'say-hello-template'
inputs:
parameters:
- name: message
- name: 'message'
container:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/topo-imagery:v3'
command: [echo]
args: ['{{inputs.parameters.message}}']
command:
- 'echo'
args:
- '{{inputs.parameters.message}}'
50 changes: 26 additions & 24 deletions docs/training/examples/wf_hello_world_dag.yaml
Original file line number Diff line number Diff line change
@@ -1,55 +1,57 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Workflow
apiVersion: 'argoproj.io/v1alpha1'
kind: 'Workflow'
metadata:
generateName: test-hello-world-dag-
namespace: argo
generateName: 'test-hello-world-dag-'
namespace: 'argo'
spec:
nodeSelector:
karpenter.sh/capacity-type: 'spot'
entrypoint: main
entrypoint: 'main'
arguments:
parameters:
- name: message1
- name: 'message1'
value: 'hello world 1'
- name: message2
- name: 'message2'
value: 'hello world 2'
templates:
- name: main
- name: 'main'
dag:
tasks:
- name: say-hello-task1
template: say-hello-template
- name: 'say-hello-task1'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: '{{workflow.parameters.message1}}'
- name: say-hello-task2
template: say-hello-template
- name: 'say-hello-task2'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: '{{workflow.parameters.message2}}'
depends: 'say-hello-task1'
- name: say-hello-task3
template: say-hello-template
- name: 'say-hello-task3'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: 'say hello task 3'
depends: 'say-hello-task1'
- name: say-hello-task4
template: say-hello-template
- name: 'say-hello-task4'
template: 'say-hello-template'
arguments:
parameters:
- name: message
- name: 'message'
value: 'say hello task 4'
depends: 'say-hello-task2 && say-hello-task3'
- name: say-hello-template
- name: 'say-hello-template'
inputs:
parameters:
- name: message
- name: 'message'
container:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/topo-imagery:v3'
command: [echo]
args: ['{{inputs.parameters.message}}']
command:
- 'echo'
args:
- '{{inputs.parameters.message}}'
73 changes: 36 additions & 37 deletions docs/training/examples/wf_output_parallel.yaml
Original file line number Diff line number Diff line change
@@ -1,77 +1,76 @@
---
apiVersion: argoproj.io/v1alpha1
kind: Workflow
apiVersion: 'argoproj.io/v1alpha1'
kind: 'Workflow'
metadata:
generateName: test-output-parallel-
generateName: 'test-output-parallel-'
spec:
parallelism: 20
nodeSelector:
karpenter.sh/capacity-type: 'spot'
serviceAccountName: workflow-runner-sa
entrypoint: main
serviceAccountName: 'workflow-runner-sa'
entrypoint: 'main'
arguments:
parameters:
- name: uri
- name: 'uri'
value: 's3://linz-imagery-staging/test/stac-validate/'
templateDefaults:
container:
imagePullPolicy: Always
imagePullPolicy: 'Always'
templates:
- name: main
- name: 'main'
dag:
tasks:
- name: aws-list
template: aws-list
- name: 'aws-list'
template: 'aws-list'
arguments:
parameters:
- name: uri
- name: 'uri'
value: '{{workflow.parameters.uri}}'
- name: include
- name: 'include'
value: 'json$'
- name: stac-print-path
template: stac-print-path
- name: 'stac-print-path'
template: 'stac-print-path'
arguments:
parameters:
- name: file
- name: 'file'
value: '{{item}}'
depends: 'aws-list'
withParam: '{{tasks.aws-list.outputs.parameters.files}}'
- name: aws-list
- name: 'aws-list'
inputs:
parameters:
- name: uri
- name: include
- name: 'uri'
- name: 'include'
container:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/argo-tasks:v2'
env:
- name: AWS_ROLE_CONFIG_PATH
value: s3://linz-bucket-config/config.json
- name: 'AWS_ROLE_CONFIG_PATH'
value: 's3://linz-bucket-config/config.json'
args:
[
'list',
'--verbose',
'--include',
'{{inputs.parameters.include}}',
'--group',
'4',
'--output',
'/tmp/file_list.json',
'{{inputs.parameters.uri}}',
]
- 'list'
- '--verbose'
- '--include'
- '{{inputs.parameters.include}}'
- '--group'
- '4'
- '--output'
- '/tmp/file_list.json'
- '{{inputs.parameters.uri}}'

outputs:
parameters:
- name: files
- name: 'files'
valueFrom:
path: /tmp/file_list.json
- name: stac-print-path
path: '/tmp/file_list.json'
- name: 'stac-print-path'
inputs:
parameters:
- name: file
- name: 'file'
script:
image: '019359803926.dkr.ecr.ap-southeast-2.amazonaws.com/argo-tasks:v2'
env:
- name: AWS_ROLE_CONFIG_PATH
value: s3://linz-bucket-config/config.json
- name: 'AWS_ROLE_CONFIG_PATH'
value: 's3://linz-bucket-config/config.json'
command:
- 'bash'
source: |
Expand Down
Loading
Loading