feat(ci): use s5cmd instead of s3cmd for uploads

It's actively maintained and has better concurrency support.

Depends on:
https://github.com/status-im/status-jenkins-lib/pull/92

Signed-off-by: Jakub Sokołowski <jakub@status.im>
This commit is contained in:
Jakub Sokołowski 2024-07-01 19:41:37 +02:00
parent c6fd0f41db
commit 43a444e981
No known key found for this signature in database
GPG Key ID: FE65CD384D5BF7B4
12 changed files with 21 additions and 21 deletions

View File

@ -40,7 +40,7 @@ RUN apt update -yq && apt install -yq software-properties-common \
&& add-apt-repository -y ppa:git-core/ppa \
&& add-apt-repository -y ppa:ubuntu-toolchain-r/test \
&& apt update -yq && apt full-upgrade -yq && apt install -yq --no-install-recommends --fix-missing \
gnupg2 openssh-client ca-certificates locales sudo jq curl wget fuse s3cmd file llvm tk-dev xz-utils \
gnupg2 openssh-client ca-certificates locales sudo jq curl wget fuse s5cmd file llvm tk-dev xz-utils \
git make build-essential pkg-config extra-cmake-modules gcc-9 g++-9 \
libgl1-mesa-dev libsm6 libice6 libfontconfig1 libdbus-1-3 libssl-dev libz-dev \
zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev unixodbc-dev libpq-dev \

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Object to store public URLs for description. */
urls = [:]
@ -86,7 +86,7 @@ pipeline {
/* Generate sha256 checksums for all artifacts. */
sha = "./${utils.pkgFilename(ext: 'sha256')}"
sh "sha256sum * | tee ./${sha}"
urls['SHA'] = s3.uploadArtifact(sha)
urls['SHA'] = s5cmd.upload(sha)
jenkins.setBuildDesc(urls)
}
archiveArtifacts('pkg/*')

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.18'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -9,7 +9,7 @@ pipeline {
/* Necessary image with Ubuntu 20.04 for older Glibc. */
docker {
label 'linux'
image 'statusteam/nim-status-client-build:1.4.1-qt5.15.2'
image 'statusteam/nim-status-client-build:1.4.2-qt5.15.2'
/* allows jenkins use cat and mounts '/dev/fuse' for linuxdeployqt */
args '--entrypoint="" --cap-add SYS_ADMIN --security-opt apparmor:unconfined --device /dev/fuse'
}
@ -99,7 +99,7 @@ pipeline {
parallel {
stage('Upload') {
steps { script {
env.PKG_URL = s3.uploadArtifact(env.STATUS_CLIENT_TARBALL)
env.PKG_URL = s5cmd.upload(env.STATUS_CLIENT_TARBALL)
jenkins.setBuildDesc(AppImage: env.PKG_URL)
} }
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.18'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -88,7 +88,7 @@ pipeline {
parallel {
stage('Upload') {
steps { script {
env.PKG_URL = s3.uploadArtifact(env.STATUS_CLIENT_TARBALL)
env.PKG_URL = s5cmd.upload(env.STATUS_CLIENT_TARBALL)
jenkins.setBuildDesc(AppImage: env.PKG_URL)
} }
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -116,7 +116,7 @@ pipeline {
parallel {
stage('Upload') {
steps { script {
env.PKG_URL = s3.uploadArtifact(env.STATUS_CLIENT_DMG)
env.PKG_URL = s5cmd.upload(env.STATUS_CLIENT_DMG)
jenkins.setBuildDesc(Dmg: env.PKG_URL)
} }
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.6'
library 'status-jenkins-lib@v1.9.1'
pipeline {

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -95,12 +95,12 @@ pipeline {
parallel {
stage('Upload 7Z') {
steps { script {
zip_url = s3.uploadArtifact(env.STATUS_CLIENT_7Z)
zip_url = s5cmd.upload(env.STATUS_CLIENT_7Z)
} }
}
stage('Upload EXE') {
steps { script {
exe_url = s3.uploadArtifact(env.STATUS_CLIENT_EXE)
exe_url = s5cmd.upload(env.STATUS_CLIENT_EXE)
} }
}
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -67,7 +67,7 @@ pipeline {
parallel {
stage('Upload') {
steps { script {
env.PKG_URL = s3.uploadArtifact(env.STATUS_CLIENT_DMG)
env.PKG_URL = s5cmd.upload(env.STATUS_CLIENT_DMG)
jenkins.setBuildDesc(Dmg: env.PKG_URL)
} }
}

View File

@ -1,5 +1,5 @@
#!/usr/bin/env groovy
library 'status-jenkins-lib@v1.8.13'
library 'status-jenkins-lib@v1.9.1'
/* Options section can't access functions in objects. */
def isPRBuild = utils.isPRBuild()
@ -67,7 +67,7 @@ pipeline {
parallel {
stage('Upload') {
steps { script {
exe_url = s3.uploadArtifact(env.STATUS_CLIENT_ZIP)
exe_url = s5cmd.upload(env.STATUS_CLIENT_ZIP)
env.PKG_URL = exe_url
jenkins.setBuildDesc(Zip: zip_url, Exe: exe_url)
} }