tekton, baby!
This commit is contained in:
34
apps/web/almond-cloud/Dockerfile
Normal file
34
apps/web/almond-cloud/Dockerfile
Normal file
@@ -0,0 +1,34 @@
|
|||||||
|
FROM debian:bullseye
|
||||||
|
|
||||||
|
ENV DEBIAN_FRONTEND noninteractive
|
||||||
|
|
||||||
|
ARG DEVPKGS="git make cmake gcc g++ python-dev libsqlcipher-dev"
|
||||||
|
|
||||||
|
#RUN sed -i 's@deb.debian.org@apt-cache.lan/deb.debian.org@g' /etc/apt/sources.list && \
|
||||||
|
# sed -i 's@security.debian.org@apt-cache.lan/security.debian.org@g' /etc/apt/sources.list && \
|
||||||
|
|
||||||
|
RUN apt-get update && \
|
||||||
|
apt-get -y install ${DEVPKGS} python3-pip python3-torch graphicsmagick zip unzip bubblewrap nodejs \
|
||||||
|
sqlcipher gettext && \
|
||||||
|
pip3 install 'git+https://github.com/stanford-oval/genienlp@3885917258678b8cd38fbd6d9b8488b6ac8caed7#egg=genienlp'
|
||||||
|
|
||||||
|
#setup
|
||||||
|
RUN useradd -ms /bin/bash -r almond-cloud && id almond-cloud
|
||||||
|
COPY --chown=almond-cloud:almond-cloud . /opt/almond-cloud/
|
||||||
|
WORKDIR /opt/almond-cloud/
|
||||||
|
RUN echo "build_from_source = true" > .npmrc && \
|
||||||
|
echo "sqlite = external" >> .npmrc && \
|
||||||
|
echo "sqlite_libname = sqlcipher" >> .npmrc && \
|
||||||
|
su almond-cloud -c 'CPLUS_INCLUDE_PATH=/usr/include/sqlcipher npm install' && \
|
||||||
|
chown -R root:root /opt/almond-cloud
|
||||||
|
|
||||||
|
# CLeanup
|
||||||
|
RUN apt-get remove -y --purge ${DEVPKGS} && \
|
||||||
|
apt-get autoremove --purge -y && \
|
||||||
|
apt-get clean -y && \
|
||||||
|
rm -rf /var/lib/apt/lists/* && \
|
||||||
|
rm -rf /var/cache/apt/* /tmp/* /var/tmp/* /var/log/*
|
||||||
|
|
||||||
|
USER almond-cloud
|
||||||
|
WORKDIR /home/almond-cloud
|
||||||
|
ENTRYPOINT ["/opt/almond-cloud/docker/start.sh"]
|
||||||
3
apps/web/almond-cloud/start.sh
Executable file
3
apps/web/almond-cloud/start.sh
Executable file
@@ -0,0 +1,3 @@
|
|||||||
|
#!/bin/bash
|
||||||
|
NODE_MAX_OLD_SPACE_SIZE=${NODE_MAX_OLD_SPACE_SIZE:-500}
|
||||||
|
exec node --max_old_space_size=${NODE_MAX_OLD_SPACE_SIZE} /opt/almond-cloud/main.js "$@"
|
||||||
77
apps/web/almond-cloud/tekton-image-build.yaml
Normal file
77
apps/web/almond-cloud/tekton-image-build.yaml
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
apiVersion: tekton.dev/v1alpha1
|
||||||
|
kind: PipelineResource
|
||||||
|
metadata:
|
||||||
|
name: chaos-kubernetes-git
|
||||||
|
spec:
|
||||||
|
type: git
|
||||||
|
params:
|
||||||
|
- name: revision
|
||||||
|
value: master
|
||||||
|
- name: url
|
||||||
|
value: http://git-ui.lan/chaos/kubernetes.git
|
||||||
|
- name: submodules
|
||||||
|
value: "false"
|
||||||
|
---
|
||||||
|
apiVersion: tekton.dev/v1alpha1
|
||||||
|
kind: PipelineResource
|
||||||
|
metadata:
|
||||||
|
name: img-almond-cloud
|
||||||
|
spec:
|
||||||
|
type: image
|
||||||
|
params:
|
||||||
|
- name: url
|
||||||
|
value: cr.lan/almond-cloud
|
||||||
|
---
|
||||||
|
apiVersion: tekton.dev/v1beta1
|
||||||
|
kind: Task
|
||||||
|
metadata:
|
||||||
|
name: build-almond-cloud
|
||||||
|
spec:
|
||||||
|
params:
|
||||||
|
- name: pathToDockerFile
|
||||||
|
type: string
|
||||||
|
default: $(resources.inputs.source.path)/apps/web/almond-cloud/Dockerfile
|
||||||
|
- name: pathToContext
|
||||||
|
type: string
|
||||||
|
default: $(resources.inputs.source.path)/apps/web/almond-cloud
|
||||||
|
resources:
|
||||||
|
inputs:
|
||||||
|
- name: source
|
||||||
|
type: git
|
||||||
|
outputs:
|
||||||
|
- name: builtImage
|
||||||
|
type: image
|
||||||
|
steps:
|
||||||
|
- name: build-and-push
|
||||||
|
image: gcr.io/kaniko-project/executor:arm64
|
||||||
|
command:
|
||||||
|
- /kaniko/executor
|
||||||
|
args:
|
||||||
|
- --dockerfile=$(params.pathToDockerFile)
|
||||||
|
- --destination=$(resources.outputs.builtImage.url)
|
||||||
|
- --context=$(params.pathToContext)
|
||||||
|
- --snapshotMode=redo
|
||||||
|
- --skip-tls-verify
|
||||||
|
---
|
||||||
|
apiVersion: tekton.dev/v1beta1
|
||||||
|
kind: TaskRun
|
||||||
|
metadata:
|
||||||
|
name: img-almond-cloud-taskrun
|
||||||
|
spec:
|
||||||
|
#serviceAccountName: dockerhub-service
|
||||||
|
taskRef:
|
||||||
|
name: build-almond-cloud
|
||||||
|
params:
|
||||||
|
- name: pathToDockerFile
|
||||||
|
value: Dockerfile
|
||||||
|
resources:
|
||||||
|
inputs:
|
||||||
|
- name: source
|
||||||
|
resourceRef:
|
||||||
|
name: chaos-kubernetes-git
|
||||||
|
outputs:
|
||||||
|
- name: builtImage
|
||||||
|
resourceRef:
|
||||||
|
name: img-almond-cloud
|
||||||
|
|
||||||
|
|
||||||
Reference in New Issue
Block a user