You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
80 lines
2.1 KiB
YAML
80 lines
2.1 KiB
YAML
apiVersion: tekton.dev/v1beta1
|
|
kind: Pipeline
|
|
metadata:
|
|
name: build-and-deploy-sakal-us
|
|
namespace: sakal-us
|
|
spec:
|
|
params:
|
|
- name: gitrevision
|
|
type: string
|
|
- name: gitrepositoryurl
|
|
type: string
|
|
workspaces:
|
|
- name: repo
|
|
tasks:
|
|
- name: git-clone
|
|
workspaces:
|
|
- name: repo
|
|
workspace: repo
|
|
params:
|
|
- name: gitrepositoryurl
|
|
value: "$(params.gitrepositoryurl)"
|
|
- name: gitrevision
|
|
value: "$(params.gitrevision)"
|
|
taskSpec:
|
|
workspaces:
|
|
- name: repo
|
|
params:
|
|
- name: gitrepositoryurl
|
|
type: string
|
|
- name: gitrevision
|
|
type: string
|
|
steps:
|
|
- name: git-clone
|
|
image: bitnami/git
|
|
workingDir: $(workspaces.repo.path)
|
|
script: |
|
|
#!/bin/sh
|
|
git fetch --all --tags
|
|
git checkout $(params.gitrevision)
|
|
- name: npm-build
|
|
runAfter:
|
|
- git-clone
|
|
workspaces:
|
|
- name: repo
|
|
workspace: repo
|
|
taskSpec:
|
|
workspaces:
|
|
- name: repo
|
|
steps:
|
|
- name: build
|
|
image: node:20
|
|
workingDir: $(workspaces.repo.path)
|
|
script: npm install && npm run build
|
|
- name: deploy-to-s3
|
|
runAfter:
|
|
- npm-build
|
|
workspaces:
|
|
- name: repo
|
|
workspace: repo
|
|
taskSpec:
|
|
workspaces:
|
|
- name: repo
|
|
steps:
|
|
- name: deploy-to-s3
|
|
image: bitnami/minio-client
|
|
workingDir: $(workspaces.repo.path)
|
|
env:
|
|
- name: MINIO_SERVER_HOST
|
|
value: minio.minio-dev.svc.cluster.local
|
|
- name: MINIO_SERVER_ACCESS_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: minio-dev
|
|
key: accessKey
|
|
- name: MINIO_SERVER_SECRET_KEY
|
|
valueFrom:
|
|
secretKeyRef:
|
|
name: minio-dev
|
|
key: secretKey
|
|
script: mc cp --recursive ./dist/ minio/sakal-us/ |