Compare commits
8 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
ee29c4f795 | ||
|
|
1cfaebd377 | ||
|
|
d7c2a34c8e | ||
|
|
57dd72fb91 | ||
|
|
ad73c7e3c5 | ||
|
|
e2451c7510 | ||
|
|
1633099428 | ||
|
|
d214244217 |
@@ -49,6 +49,8 @@ spec:
|
||||
runAfter:
|
||||
- fetch-repository
|
||||
- fetch-repository-private
|
||||
- fetch-repository-explorer
|
||||
- fetch-repository-organic
|
||||
params:
|
||||
- name: CONTEXT
|
||||
value: "$(params.JOB_NAME)"
|
||||
@@ -130,6 +132,137 @@ spec:
|
||||
runAfter:
|
||||
- get-time
|
||||
- report-pending
|
||||
- name: fetch-repository-explorer
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source-explorer
|
||||
params:
|
||||
- name: url
|
||||
value: git@code.fizz.buzz:talexander/organic_ast_explorer.git
|
||||
- name: revision
|
||||
value: main
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: fetch-repository-organic
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source-organic
|
||||
params:
|
||||
- name: url
|
||||
value: git@code.fizz.buzz:talexander/organic.git
|
||||
- name: revision
|
||||
value: main
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: build-explorer-image
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/kaniko/0.6//kaniko.yaml
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: "harbor.fizz.buzz/private/homepage-build-organic:$(tasks.get-time.results.unix-time)"
|
||||
- name: CONTEXT
|
||||
value: .
|
||||
- name: DOCKERFILE
|
||||
value: docker/organic/Dockerfile
|
||||
- name: BUILDER_IMAGE
|
||||
value: "gcr.io/kaniko-project/executor:v1.12.1"
|
||||
- name: EXTRA_ARGS
|
||||
value:
|
||||
- "--destination=harbor.fizz.buzz/private/homepage-build-organic" # Also write the :latest image
|
||||
- --cache=true
|
||||
- --cache-copy-layers
|
||||
- --cache-repo=harbor.fizz.buzz/kanikocache/cache
|
||||
- --use-new-run # Should result in a speed-up
|
||||
- --reproducible # To remove timestamps so layer caching works.
|
||||
- --snapshot-mode=redo
|
||||
- --skip-unused-stages=true
|
||||
- --registry-mirror=dockerhub.dockerhub.svc.cluster.local
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: dockerconfig
|
||||
workspace: docker-credentials
|
||||
runAfter:
|
||||
- get-time
|
||||
- report-pending
|
||||
- name: build-explorer-wasm
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.organic.path)"
|
||||
steps:
|
||||
- image: "$(params.IMAGE)"
|
||||
name: build-explorer-wasm
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: "harbor.fizz.buzz/private/homepage-build-organic:$(tasks.get-time.results.unix-time)"
|
||||
workspaces:
|
||||
- name: organic
|
||||
workspace: git-source-organic
|
||||
runAfter:
|
||||
- get-time
|
||||
- build-explorer-image
|
||||
- name: copy-explorer-files
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.source-explorer.path)"
|
||||
steps:
|
||||
- image: node:lts-alpine3.19
|
||||
name: copy-explorer-files
|
||||
script: |
|
||||
#!/usr/bin/env sh
|
||||
set -euo pipefail
|
||||
npm install
|
||||
npm run release
|
||||
mkdir -p "$(workspaces.source.path)/static/organic/ast_explorer/"
|
||||
cp -r "$(workspaces.source-explorer.path)/dist/"* "$(workspaces.source.path)/static/organic/ast_explorer/"
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: source-explorer
|
||||
workspace: git-source-explorer
|
||||
- name: organic
|
||||
workspace: git-source-organic
|
||||
runAfter:
|
||||
- build-explorer-wasm
|
||||
- name: build-image
|
||||
taskRef:
|
||||
resolver: git
|
||||
@@ -167,6 +300,7 @@ spec:
|
||||
workspace: docker-credentials
|
||||
runAfter:
|
||||
- copy-private-files
|
||||
- copy-explorer-files
|
||||
finally:
|
||||
- name: report-success
|
||||
when:
|
||||
@@ -250,6 +384,26 @@ spec:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: git-source-explorer
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: git-source-organic
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: docker-credentials
|
||||
secret:
|
||||
secretName: harbor-plain
|
||||
|
||||
451
.lighthouse/pipeline-build-homepage.yaml
Normal file
451
.lighthouse/pipeline-build-homepage.yaml
Normal file
@@ -0,0 +1,451 @@
|
||||
apiVersion: tekton.dev/v1beta1
|
||||
kind: PipelineRun
|
||||
metadata:
|
||||
name: build-homepage
|
||||
spec:
|
||||
pipelineSpec:
|
||||
params:
|
||||
- name: image-name
|
||||
description: The name for the built image
|
||||
type: string
|
||||
- name: path-to-image-context
|
||||
description: The path to the build context
|
||||
type: string
|
||||
- name: path-to-dockerfile
|
||||
description: The path to the Dockerfile
|
||||
type: string
|
||||
tasks:
|
||||
- name: get-time
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: /workspace/source
|
||||
results:
|
||||
- name: unix-time
|
||||
description: The current date in unix timestamp format
|
||||
steps:
|
||||
- image: alpine:3.18
|
||||
name: get-time-step
|
||||
script: |
|
||||
#!/usr/bin/env sh
|
||||
set -euo pipefail
|
||||
echo -n "$(date +%s)" | tee $(results.unix-time.path)
|
||||
- name: detect-tag
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.repo.path)"
|
||||
results:
|
||||
- name: tag
|
||||
description: The tag to use for the docker container.
|
||||
steps:
|
||||
- image: alpine/git:v2.34.2
|
||||
name: detect-tag-step
|
||||
script: |
|
||||
#!/usr/bin/env sh
|
||||
set -euo pipefail
|
||||
git fetch --tags
|
||||
current_tag=$(git tag --points-at HEAD --list 'v*.*.*')
|
||||
if [ -z "$current_tag" ]; then
|
||||
echo "No tag at current commit"
|
||||
exit 1
|
||||
else
|
||||
echo -n "${current_tag}" | tee $(results.tag.path)
|
||||
fi
|
||||
workspaces:
|
||||
- name: repo
|
||||
workspace: git-source
|
||||
runAfter:
|
||||
- fetch-repository
|
||||
- name: report-pending
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
||||
runAfter:
|
||||
- fetch-repository
|
||||
- fetch-repository-private
|
||||
- fetch-repository-explorer
|
||||
- fetch-repository-organic
|
||||
params:
|
||||
- name: CONTEXT
|
||||
value: "$(params.JOB_NAME)"
|
||||
- name: REPO_FULL_NAME
|
||||
value: "$(params.REPO_OWNER)/$(params.REPO_NAME)"
|
||||
- name: GITEA_HOST_URL
|
||||
value: code.fizz.buzz
|
||||
- name: SHA
|
||||
value: "$(tasks.fetch-repository.results.commit)"
|
||||
- name: DESCRIPTION
|
||||
value: "Build $(params.JOB_NAME) has started"
|
||||
- name: STATE
|
||||
value: pending
|
||||
- name: TARGET_URL
|
||||
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
|
||||
- name: fetch-repository
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source
|
||||
params:
|
||||
- name: url
|
||||
value: $(params.REPO_URL)
|
||||
- name: revision
|
||||
value: $(params.PULL_BASE_SHA)
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: fetch-repository-private
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source-private
|
||||
params:
|
||||
- name: url
|
||||
value: git@code.fizz.buzz:talexander/homepage_private.git
|
||||
- name: revision
|
||||
value: main
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: copy-private-files
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.source.path)"
|
||||
steps:
|
||||
- image: alpine:3.18
|
||||
name: copy-private-files
|
||||
script: |
|
||||
#!/usr/bin/env sh
|
||||
set -euo pipefail
|
||||
cp -r "$(workspaces.source-private.path)/static/"* "$(workspaces.source.path)/static/"
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: source-private
|
||||
workspace: git-source-private
|
||||
runAfter:
|
||||
- report-pending
|
||||
- name: fetch-repository-explorer
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source-explorer
|
||||
params:
|
||||
- name: url
|
||||
value: git@code.fizz.buzz:talexander/organic_ast_explorer.git
|
||||
- name: revision
|
||||
value: main
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: fetch-repository-organic
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/git-clone/0.9/git-clone.yaml
|
||||
workspaces:
|
||||
- name: output
|
||||
workspace: git-source-organic
|
||||
params:
|
||||
- name: url
|
||||
value: git@code.fizz.buzz:talexander/organic.git
|
||||
- name: revision
|
||||
value: main
|
||||
- name: deleteExisting
|
||||
value: "true"
|
||||
- name: build-explorer-image
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/kaniko/0.6//kaniko.yaml
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: "harbor.fizz.buzz/private/homepage-build-organic:$(tasks.get-time.results.unix-time)"
|
||||
- name: CONTEXT
|
||||
value: .
|
||||
- name: DOCKERFILE
|
||||
value: docker/organic/Dockerfile
|
||||
- name: BUILDER_IMAGE
|
||||
value: "gcr.io/kaniko-project/executor:v1.12.1"
|
||||
- name: EXTRA_ARGS
|
||||
value:
|
||||
- "--destination=harbor.fizz.buzz/private/homepage-build-organic" # Also write the :latest image
|
||||
- --cache=true
|
||||
- --cache-copy-layers
|
||||
- --cache-repo=harbor.fizz.buzz/kanikocache/cache
|
||||
- --use-new-run # Should result in a speed-up
|
||||
- --reproducible # To remove timestamps so layer caching works.
|
||||
- --snapshot-mode=redo
|
||||
- --skip-unused-stages=true
|
||||
- --registry-mirror=dockerhub.dockerhub.svc.cluster.local
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: dockerconfig
|
||||
workspace: docker-credentials
|
||||
runAfter:
|
||||
- get-time
|
||||
- report-pending
|
||||
- name: build-explorer-wasm
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.organic.path)"
|
||||
steps:
|
||||
- image: "$(params.IMAGE)"
|
||||
name: build-explorer-wasm
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: "harbor.fizz.buzz/private/homepage-build-organic:$(tasks.get-time.results.unix-time)"
|
||||
workspaces:
|
||||
- name: organic
|
||||
workspace: git-source-organic
|
||||
runAfter:
|
||||
- get-time
|
||||
- build-explorer-image
|
||||
- name: copy-explorer-files
|
||||
taskSpec:
|
||||
metadata: {}
|
||||
stepTemplate:
|
||||
image: alpine:3.18
|
||||
name: ""
|
||||
resources:
|
||||
requests:
|
||||
cpu: 10m
|
||||
memory: 600Mi
|
||||
workingDir: "$(workspaces.source-explorer.path)"
|
||||
steps:
|
||||
- image: node:lts-alpine3.19
|
||||
name: copy-explorer-files
|
||||
script: |
|
||||
#!/usr/bin/env sh
|
||||
set -euo pipefail
|
||||
npm install
|
||||
npm run release
|
||||
mkdir -p "$(workspaces.source.path)/static/organic/ast_explorer/"
|
||||
cp -r "$(workspaces.source-explorer.path)/dist/"* "$(workspaces.source.path)/static/organic/ast_explorer/"
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: source-explorer
|
||||
workspace: git-source-explorer
|
||||
- name: organic
|
||||
workspace: git-source-organic
|
||||
runAfter:
|
||||
- build-explorer-wasm
|
||||
- name: build-image
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/kaniko/0.6//kaniko.yaml
|
||||
params:
|
||||
- name: IMAGE
|
||||
value: "$(params.image-name):$(tasks.detect-tag.results.tag)"
|
||||
- name: CONTEXT
|
||||
value: $(params.path-to-image-context)
|
||||
- name: DOCKERFILE
|
||||
value: $(params.path-to-dockerfile)
|
||||
- name: BUILDER_IMAGE
|
||||
value: "gcr.io/kaniko-project/executor:v1.12.1"
|
||||
- name: EXTRA_ARGS
|
||||
value:
|
||||
- "--destination=$(params.image-name)" # Also write the :latest image
|
||||
- --cache=true
|
||||
- --cache-copy-layers
|
||||
- --cache-repo=harbor.fizz.buzz/kanikocache/cache
|
||||
- --use-new-run # Should result in a speed-up
|
||||
- --reproducible # To remove timestamps so layer caching works.
|
||||
- --snapshot-mode=redo
|
||||
- --skip-unused-stages=true
|
||||
- --registry-mirror=dockerhub.dockerhub.svc.cluster.local
|
||||
workspaces:
|
||||
- name: source
|
||||
workspace: git-source
|
||||
- name: dockerconfig
|
||||
workspace: docker-credentials
|
||||
runAfter:
|
||||
- detect-tag
|
||||
- copy-private-files
|
||||
- copy-explorer-files
|
||||
finally:
|
||||
- name: report-success
|
||||
when:
|
||||
- input: "$(tasks.status)"
|
||||
operator: in
|
||||
values: ["Succeeded", "Completed"]
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
||||
params:
|
||||
- name: CONTEXT
|
||||
value: "$(params.JOB_NAME)"
|
||||
- name: REPO_FULL_NAME
|
||||
value: "$(params.REPO_OWNER)/$(params.REPO_NAME)"
|
||||
- name: GITEA_HOST_URL
|
||||
value: code.fizz.buzz
|
||||
- name: SHA
|
||||
value: "$(tasks.fetch-repository.results.commit)"
|
||||
- name: DESCRIPTION
|
||||
value: "Build $(params.JOB_NAME) has succeeded"
|
||||
- name: STATE
|
||||
value: success
|
||||
- name: TARGET_URL
|
||||
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
|
||||
- name: report-failure
|
||||
when:
|
||||
- input: "$(tasks.status)"
|
||||
operator: in
|
||||
values: ["Failed"]
|
||||
taskRef:
|
||||
resolver: git
|
||||
params:
|
||||
- name: url
|
||||
value: https://github.com/tektoncd/catalog.git
|
||||
- name: revision
|
||||
value: df36b3853a5657fd883015cdbf07ad6466918acf
|
||||
- name: pathInRepo
|
||||
value: task/gitea-set-status/0.1/gitea-set-status.yaml
|
||||
params:
|
||||
- name: CONTEXT
|
||||
value: "$(params.JOB_NAME)"
|
||||
- name: REPO_FULL_NAME
|
||||
value: "$(params.REPO_OWNER)/$(params.REPO_NAME)"
|
||||
- name: GITEA_HOST_URL
|
||||
value: code.fizz.buzz
|
||||
- name: SHA
|
||||
value: "$(tasks.fetch-repository.results.commit)"
|
||||
- name: DESCRIPTION
|
||||
value: "Build $(params.JOB_NAME) has failed"
|
||||
- name: STATE
|
||||
value: failure
|
||||
- name: TARGET_URL
|
||||
value: "https://tekton.fizz.buzz/#/namespaces/$(context.pipelineRun.namespace)/pipelineruns/$(context.pipelineRun.name)"
|
||||
workspaces:
|
||||
- name: git-source
|
||||
- name: docker-credentials
|
||||
workspaces:
|
||||
- name: git-source
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: rust-source
|
||||
- name: git-source-private
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: git-source-explorer
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: git-source-organic
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: docker-credentials
|
||||
secret:
|
||||
secretName: harbor-plain
|
||||
serviceAccountName: build-bot
|
||||
timeout: 240h0m0s
|
||||
params:
|
||||
- name: image-name
|
||||
value: "harbor.fizz.buzz/private/homepage"
|
||||
- name: path-to-image-context
|
||||
value: .
|
||||
- name: path-to-dockerfile
|
||||
value: docker/server/Dockerfile
|
||||
@@ -36,35 +36,8 @@ spec:
|
||||
# We already run on every commit, so running when the semver tags get pushed is causing needless double-processing.
|
||||
- "^v[0-9]+\\.[0-9]+\\.[0-9]+$"
|
||||
- name: build-homepage
|
||||
agent: tekton-pipeline
|
||||
branches:
|
||||
- "^v[0-9]+\\.[0-9]+\\.[0-9]+$"
|
||||
context: build-docker
|
||||
max_concurrency: 1
|
||||
source: "pipeline-build-homepage.yaml"
|
||||
# Override https-based url from lighthouse events.
|
||||
clone_uri: "git@code.fizz.buzz:talexander/homepage.git"
|
||||
pipeline_run_spec:
|
||||
serviceAccountName: build-bot
|
||||
pipelineRef:
|
||||
name: build-docker-pipeline
|
||||
workspaces:
|
||||
- name: git-source
|
||||
volumeClaimTemplate:
|
||||
spec:
|
||||
storageClassName: "nfs-client"
|
||||
accessModes:
|
||||
- ReadWriteOnce
|
||||
resources:
|
||||
requests:
|
||||
storage: 10Gi
|
||||
subPath: git-source
|
||||
- name: docker-credentials
|
||||
secret:
|
||||
secretName: harbor-plain
|
||||
params:
|
||||
- name: image-name
|
||||
value: "harbor.fizz.buzz/private/homepage"
|
||||
- name: path-to-image-context
|
||||
value: .
|
||||
- name: path-to-dockerfile
|
||||
value: docker/server/Dockerfile
|
||||
branches:
|
||||
- "^v[0-9]+\\.[0-9]+\\.[0-9]+$"
|
||||
|
||||
7
docker/organic/Dockerfile
Normal file
7
docker/organic/Dockerfile
Normal file
@@ -0,0 +1,7 @@
|
||||
FROM rustlang/rust:nightly-alpine3.17
|
||||
|
||||
RUN apk add --no-cache musl-dev make bash
|
||||
RUN rustup target add wasm32-unknown-unknown
|
||||
RUN cargo install wasm-bindgen-cli
|
||||
|
||||
CMD ["make", "wasm"]
|
||||
52
docker/organic/Makefile
Normal file
52
docker/organic/Makefile
Normal file
@@ -0,0 +1,52 @@
|
||||
SHELL := bash
|
||||
.ONESHELL:
|
||||
.SHELLFLAGS := -eu -o pipefail -c
|
||||
.DELETE_ON_ERROR:
|
||||
MAKEFLAGS += --warn-undefined-variables
|
||||
MAKEFLAGS += --no-builtin-rules
|
||||
OS:=$(shell uname -s)
|
||||
|
||||
ifeq ($(origin .RECIPEPREFIX), undefined)
|
||||
$(error This Make does not support .RECIPEPREFIX. Please use GNU Make 4.0 or later)
|
||||
endif
|
||||
.RECIPEPREFIX = >
|
||||
|
||||
IMAGE_NAME:=homepage-build-organic
|
||||
# REMOTE_REPO:=harbor.fizz.buzz/private
|
||||
TARGET :=
|
||||
|
||||
.PHONY: help
|
||||
help:
|
||||
> @grep -h "##" $(MAKEFILE_LIST) | grep -v grep | sed -E 's/^([^:]*): *## */\1: /'
|
||||
|
||||
.PHONY: build
|
||||
build: ## Build the docker image.
|
||||
> docker build --tag $(IMAGE_NAME) --target=$(TARGET) --file Dockerfile ../../
|
||||
|
||||
.PHONY: push
|
||||
push: ## Push the docker image to a remote repository.
|
||||
ifdef REMOTE_REPO
|
||||
> docker tag $(IMAGE_NAME) $(REMOTE_REPO)/$(IMAGE_NAME)
|
||||
> docker push $(REMOTE_REPO)/$(IMAGE_NAME)
|
||||
else
|
||||
> @echo "REMOTE_REPO not defined, not pushing to a remote repo."
|
||||
endif
|
||||
|
||||
.PHONY: clean
|
||||
clean:
|
||||
> docker rmi $(IMAGE_NAME)
|
||||
ifdef REMOTE_REPO
|
||||
> docker rmi $(REMOTE_REPO)/$(IMAGE_NAME)
|
||||
else
|
||||
> @echo "REMOTE_REPO not defined, not removing from remote repo."
|
||||
endif
|
||||
|
||||
.PHONY: run
|
||||
run: build
|
||||
run: ## Launch the docker image
|
||||
> docker run --rm -i -t $(IMAGE_NAME)
|
||||
|
||||
.PHONY: shell
|
||||
shell: ## Launch an interactive shell inside the docker image.
|
||||
shell: build
|
||||
> docker run --rm -i -t --entrypoint /bin/bash --mount type=tmpfs,destination=/tmp $(IMAGE_NAME)
|
||||
@@ -48,7 +48,20 @@ http {
|
||||
default_type text/plain;
|
||||
}
|
||||
|
||||
location ~ /\.well-known/openpgpkey/[^/]+/hu/ {
|
||||
location /.well-known/openpgpkey/hu/ {
|
||||
alias /srv/http/public/well-known/openpgpkey/fizz.buzz/hu/;
|
||||
default_type "application/octet-stream";
|
||||
add_header Access-Control-Allow-Origin * always;
|
||||
}
|
||||
|
||||
location /.well-known/openpgpkey/policy {
|
||||
alias /srv/http/public/well-known/openpgpkey/fizz.buzz/policy;
|
||||
default_type "application/octet-stream";
|
||||
add_header Access-Control-Allow-Origin * always;
|
||||
}
|
||||
|
||||
location ~ /\.well-known/(?<path>openpgpkey/[^/]+/hu/.*) {
|
||||
alias /srv/http/public/well-known/$path;
|
||||
default_type "application/octet-stream";
|
||||
add_header Access-Control-Allow-Origin * always;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user