From 79f46c59a26399a43c6c8fca4658415e1adf3ce8 Mon Sep 17 00:00:00 2001 From: Andreas Fahrecker Date: Tue, 16 Apr 2024 00:42:29 +0200 Subject: [PATCH] Add tea and make docker build parallel --- Dockerfile | 5 ++++ Jenkinsfile | 61 +++++++++++++++++++++++++---------------------- alpine/Dockerfile | 11 ++++++++- 3 files changed, 47 insertions(+), 30 deletions(-) diff --git a/Dockerfile b/Dockerfile index 635e33c..d892e5f 100644 --- a/Dockerfile +++ b/Dockerfile @@ -20,6 +20,11 @@ RUN echo \ RUN apt-get update RUN apt-get install -y docker-ce-cli +# Install tea +RUN apt-get install -y git make golang +RUN git clone https://gitea.com/gitea/tea.git +RUN cd tea && make && make install + # Install flutter RUN apt-get update RUN apt-get install -y\ diff --git a/Jenkinsfile b/Jenkinsfile index fe9f903..94b3f46 100644 --- a/Jenkinsfile +++ b/Jenkinsfile @@ -1,7 +1,9 @@ #!groovy pipeline { - agent none + agent { + label 'linux' + } stages { stage('Build/Push Docker Image') { @@ -9,42 +11,43 @@ pipeline { beforeAgent true; branch 'main' } - agent { - label 'linux' - } - environment { - DOCKER_HUB_CREDENTIALS = credentials('docker-hub-fah16145') - } stages { stage('Login') { + environment { + DOCKER_HUB_CREDENTIALS = credentials('docker-hub-fah16145') + } steps { sh 'docker login -u ${DOCKER_HUB_CREDENTIALS_USR} -p ${DOCKER_HUB_CREDENTIALS_PSW}' } } - stage('Default Image') { - stages { - stage('Build') { - steps { - sh 'docker build -t fah16145/jenkins-ssh-docker-agent:latest .' + stage('Build & Push') { + parallel { + stage('Default Image') { + stages { + stage('Build Default Image') { + steps { + sh 'docker build -t fah16145/jenkins-ssh-docker-agent:latest .' + } + } + stage('Push Default Image') { + steps { + sh 'docker push fah16145/jenkins-ssh-docker-agent:latest' + } + } } } - stage('Push') { - steps { - sh 'docker push fah16145/jenkins-ssh-docker-agent:latest' - } - } - } - } - stage('Alpine Image') { - stages { - stage('Build') { - steps { - sh 'docker build -t fah16145/jenkins-ssh-docker-agent:alpine alpine/' - } - } - stage('Push') { - steps { - sh 'docker push fah16145/jenkins-ssh-docker-agent:alpine' + stage('Alpine Image') { + stages { + stage('Build Alpine Image') { + steps { + sh 'docker build -t fah16145/jenkins-ssh-docker-agent:alpine alpine/' + } + } + stage('Push Alpine Image') { + steps { + sh 'docker push fah16145/jenkins-ssh-docker-agent:alpine' + } + } } } } diff --git a/alpine/Dockerfile b/alpine/Dockerfile index c44d67b..8a22e55 100644 --- a/alpine/Dockerfile +++ b/alpine/Dockerfile @@ -5,10 +5,19 @@ RUN addgroup jenkins docker RUN apk add --no-cache docker docker-compose +# Install tea +RUN apk add --no-cache tea + # Install flutter -RUN apk add --no-cache flutter +RUN apk add --no-cache ----repository=https://dl-cdn.alpinelinux.org/alpine/edge/testing flutter RUN flutter config --no-cli-animations RUN flutter doctor -v RUN flutter channel master RUN flutter upgrade + +#Install OpenSSL +RUN apk add --no-cache openssl + +#Install Node.js +RUN apk add --no-cache nodejs npm \ No newline at end of file