Merge pull request #15158 from nupplaphil/ci/full-archive

[CI] Add All-In-One Archive
This commit is contained in:
Michael Vogel 2025-10-03 22:35:43 +02:00 committed by GitHub
commit 70f2f17210
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
4 changed files with 111 additions and 2 deletions

View file

@ -0,0 +1,99 @@
# SPDX-FileCopyrightText: 2010 - 2024 the Friendica project
#
# SPDX-License-Identifier: CC0-1.0
depends_on:
- phpunit
- code_standards_check
- database_checks
- messages.po_check
# This prevents executing this pipeline at other servers than ci.friendi.ca
labels:
location: friendica
type: releaser
# CD is triggered after pushing new code to the develop or *-rc branch, excluding the stable branch
when:
repo: friendica/friendica
branch: [ develop, '*-rc' ]
event: push
skip_clone: true
steps:
clone_friendica_base:
image: alpine/git
commands:
- git config --global user.email "no-reply@friendi.ca"
- git config --global user.name "Friendica"
- git config --global --add safe.directory $CI_WORKSPACE
- git clone $CI_REPO_CLONE_URL .
- git checkout $CI_COMMIT_BRANCH
- git fetch origin $CI_COMMIT_REF
- git merge $CI_COMMIT_SHA
clone_friendica_addon:
image: alpine/git
commands:
- git config --global user.email "no-reply@friendi.ca"
- git config --global user.name "Friendica"
- git clone https://github.com/friendica/friendica-addons.git addon
- cd addon/
- git checkout $CI_COMMIT_BRANCH
restore_cache:
image: meltwater/drone-cache:dev
settings:
backend: "filesystem"
restore: true
cache_key: "{{ .Repo.Name }}_php7.4_{{ arch }}_{{ os }}"
archive_format: "gzip"
mount:
- '.composer'
volumes:
- /tmp/drone-cache:/tmp/cache
composer_install:
image: friendicaci/php8.2:php8.2.28
commands:
- export COMPOSER_HOME=.composer
- composer validate
- composer install --no-dev --optimize-autoloader
volumes:
- /etc/hosts:/etc/hosts
create_artifacts:
image: debian
commands:
- apt-get update
- apt-get install bzip2
- mkdir ./build
- export VERSION="$(cat VERSION)"
- export RELEASE="friendica-all-in-one-$VERSION"
- export ARTIFACT="$RELEASE.tar.gz"
- tar
--transform "s,^,$RELEASE/,S"
-X mods/release-list-exclude.txt
-T mods/release-list-include.txt
-cvzf ./build/$ARTIFACT
- cd ./build
- sha256sum "$ARTIFACT" > "$ARTIFACT.sum256"
- chmod 664 ./*
- ls -lh
- cat "$ARTIFACT.sum256"
- sha256sum "$ARTIFACT"
sign_artifacts:
image: plugins/gpgsign
settings:
key:
from_secret: gpg_key
passphrase:
from_secret: gpg_password
files:
- build/*
exclude:
- build/*.sum256
detach_sign: true
publish_artifacts:
image: alpine
commands:
- cp -fr build/* /tmp/friendica_files/
volumes:
- files:/tmp/friendica_files

View file

@ -25,6 +25,9 @@ steps:
clone:
image: alpine/git
commands:
- git config --global user.email "no-reply@friendi.ca"
- git config --global user.name "Friendica"
- git config --global --add safe.directory $CI_WORKSPACE
- git clone $CI_REPO_CLONE_URL .
- git checkout $CI_COMMIT_BRANCH
- git fetch origin $CI_COMMIT_REF

View file

@ -1,2 +1,8 @@
addon/.tx
addon/.git
addon/.editorconfig
addon/.gitattributes
addon/.woodpecker
addon/**/*/messages.po
view/lang/*/messages.po
view/smarty3/compiled/*
view/smarty3/compiled/*

View file

@ -1,3 +1,4 @@
addon/
bin/.htaccess
bin/auth_ejabberd.php
bin/console
@ -26,4 +27,4 @@ LICENSE
README.md
security.txt
update.php
VERSION
VERSION