]> git.mxchange.org Git - friendica.git/blob - .woodpecker/.releaser.yml
Merge pull request #12044 from nupplaphil/bug/woordpecker_ci
[friendica.git] / .woodpecker / .releaser.yml
1 depends_on:
2   - phpunit
3   - code_standards_check
4
5 skip_clone: true
6
7 pipeline:
8   clone:
9     image: alpine/git
10     commands:
11       - git clone $CI_REPO_LINK .
12       - git checkout $CI_COMMIT_BRANCH
13       - git fetch origin $CI_COMMIT_REF
14       - git merge $CI_COMMIT_SHA
15     when:
16       repo: friendica/friendica
17       branch: stable
18       event: tag
19       instance: releaser.ci.friendi.ca
20   restore_cache:
21     image: meltwater/drone-cache:dev
22     settings:
23       backend: "filesystem"
24       restore: true
25       cache_key: "{{ .Repo.Name }}_php7.4_{{ arch }}_{{ os }}"
26       archive_format: "gzip"
27       mount:
28         - '.composer'
29     volumes:
30       - /tmp/drone-cache:/tmp/cache
31     when:
32       repo: friendica/friendica
33       branch: stable
34       event: tag
35       instance: releaser.ci.friendi.ca
36   composer_install:
37     image: friendicaci/php7.4:php7.4.18
38     commands:
39       - export COMPOSER_HOME=.composer
40       - composer validate
41       - composer install --no-dev --optimize-autoloader
42     when:
43       repo: friendica/friendica
44       branch: stable
45       event: tag
46       instance: releaser.ci.friendi.ca
47     volumes:
48       - /etc/hosts:/etc/hosts
49   create_artifacts:
50     image: debian
51     commands:
52       - apt-get update
53       - apt-get install bzip2
54       - mkdir ./build
55       - export VERSION="$(cat VERSION)"
56       - export RELEASE="friendica-full-$VERSION"
57       - export ARTIFACT="$RELEASE.tar.gz"
58       - tar
59         --transform "s,^,$RELEASE/,S"
60         -X mods/release-list-exclude.txt
61         -T mods/release-list-include.txt
62         -cvzf ./build/$ARTIFACT
63       - cd ./build
64       - sha256sum "$ARTIFACT" > "$ARTIFACT.sum256"
65       - chmod 664 ./*
66       - ls -lh
67       - cat "$ARTIFACT.sum256"
68       - sha256sum "$ARTIFACT"
69     when:
70       repo: friendica/friendica
71       branch: stable
72       event: tag
73       instance: releaser.ci.friendi.ca
74   sign_artifacts:
75     image: plugins/gpgsign
76     settings:
77       key:
78         from_secret: gpg_key
79       passphrase:
80         from_secret: gpg_password
81       files:
82         - build/*
83       exclude:
84         - build/*.sum256
85       detach_sign: true
86     when:
87       repo: friendica/friendica
88       branch: stable
89       event: tag
90       instance: releaser.ci.friendi.ca
91   publish_artifacts:
92     image: alpine
93     commands:
94       - cp -fr build/* /tmp/friendica_files/
95     volumes:
96       - files:/tmp/friendica_files
97     when:
98       repo: friendica/friendica
99       branch: stable
100       event: tag
101       instance: releaser.ci.friendi.ca