Skip to content

Instantly share code, notes, and snippets.

@koduki
Last active June 26, 2022 04:02
Show Gist options
  • Save koduki/33ee7b6cb94f64e8712b2e722c12fe0a to your computer and use it in GitHub Desktop.
Save koduki/33ee7b6cb94f64e8712b2e722c12fe0a to your computer and use it in GitHub Desktop.
kubectl apply -f mybuild.yaml && tkn taskrun delete run-sample-java-build && kubectl apply -f mybuild-run.yaml
tkn taskrun logs run-sample-java-build -f
apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
name: sample-java-build
description: An example of Java Build with maven
spec:
params:
- name: repo-url
type: string
description: The git repo URL to clone from.
steps:
- name: git-clone
image: alpine/git
workingDir: /workspace
script: |
#!/usr/bin/env sh
echo "repos-url: "$(params.repo-url)
git clone $(params.repo-url)
- name: java-build
image: openjdk
workingDir: /workspace
script: |
#!/usr/bin/env sh
cd quarkus-quickstarts/getting-started
# ./mvnw package
mkdir -p target/quarkus-app
touch target/quarkus-app/quarkus-run.jar
- name: container-pre
image: debian
workingDir: /workspace
script: |
#!/usr/bin/env sh
cd quarkus-quickstarts/getting-started
cat << EOF > ./Dockerfile
FROM openjdk
RUN mkdir /app
ADD target/quarkus-app /app
CMD [ "java", "-jar", "/app/quarkus-run.jar"]
EOF
- name: container-build-and-push
image: gcr.io/kaniko-project/executor
workingDir: /workspace
env:
- name: "DOCKER_CONFIG"
value: "/root/.docker"
command:
- /kaniko/executor
args:
- --dockerfile=Dockerfile
- --destination=koduki/getting-started
- --context=quarkus-quickstarts/getting-started/
# - name: container-build-and-push
# image: gcr.io/kaniko-project/executor:debug
# workingDir: /workspace
# env:
# - name: "DOCKER_CONFIG"
# value: "/root/.docker"
# script: |
# #!/busybox/sh
# pwd
# ls -l /root/.docker
# ls -l ${DOCKER_CONFIG}/config.json
# cat ${DOCKER_CONFIG}/config.json
# /kaniko/executor --dockerfile=Dockerfile --destination=koduki/getting-started --context=quarkus-quickstarts/getting-started/
apiVersion: tekton.dev/v1beta1
kind: TaskRun
metadata:
name: run-sample-java-build
spec:
taskRef:
name: sample-java-build
params:
- name: repo-url
value: https://github.com/quarkusio/quarkus-quickstarts.git
@koduki
Copy link
Author

koduki commented Jun 23, 2022

memo.

apiVersion: tekton.dev/v1beta1
kind: Task
metadata:
  name: task-mvn-test
  namespace: testcontainer-poc
spec:
  sidecars:
    - image: 'docker:20.10-dind'
      name: docker
      resources: {}
      securityContext:
        privileged: true
      volumeMounts:
        - mountPath: /var/lib/docker
          name: dind-storage
        - mountPath: /var/run/
          name: dind-socket
  steps:
    - args:
        - test
        - '-Dspring-boot.run.profiles=test'
      command:
        - /usr/bin/mvn
      image: gcr.io/cloud-builders/mvn
      name: step-mvn-test
      resources: {}
      volumeMounts:
        - mountPath: /var/run/
          name: dind-socket
      workingDir: /workspace/source
  volumes:
    - emptyDir: {}
      name: dind-storage
    - emptyDir: {}
      name: dind-socket
  workspaces:
    - name: source

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment