Leonid Pliushch
e8ecba5df8
CI: specify needed resources on per-task basis
...
Avoid need of specifying max configuration for tasks where such amount
of resources is unneeded.
%ci:reset-backlog
2019-10-25 15:04:58 +03:00
Leonid Pliushch
457d191e83
CI: some packages require max configuration
2019-10-25 14:28:26 +03:00
Leonid Pliushch
2456500804
CI: bump RAM max allocation
...
Seems to be needed after recent LLVM update.
2019-10-23 02:39:30 +03:00
Leonid Pliushch
06c965ffb6
CI: use custom `git clone` for upload task
...
Purpose same as for build task.
2019-09-10 17:16:11 +03:00
Leonid Pliushch
1ce33aba30
CI: switch to file-based cache for passing *.deb files between tasks
2019-09-10 16:09:32 +03:00
Leonid Pliushch
8701462951
add new linter script & fix packages where needed
...
Linter will check packages submitted for CI build. If error was found,
build will not be allowed.
To ensure that all build.sh scripts are consistent and have at least
minimal allowed quality, linter is permanently enabled for all branches
and pull requests.
2019-08-14 14:27:55 +03:00
Leonid Pliushch
473f71fd93
CI: reduce RAM limit to 8 GB
...
Possible after setting correct TERMUX_MAKE_PROCESSES.
2019-07-29 15:26:47 +03:00
Leonid Pliushch
26306f7ade
CI: set TERMUX_MAKE_PROCESSES to 4
...
Otherwise it will use number reported by `nproc` which is 32 currently.
2019-07-29 14:47:54 +03:00
Leonid Pliushch
4ebef55b2d
CI: raise memory to 12 GB
...
4 and even 8 GB cause container failure when building certain
packages (e.g. nodejs or libllvm).
2019-07-29 11:54:14 +03:00
Leonid Pliushch
eae9966982
CI: reduce resource usage
...
https://github.com/termux/termux-packages/issues/4116
2019-07-29 02:07:23 +03:00
Leonid Pliushch
c628fa64f0
CI: fix syntax error in .cirrus.yml
2019-07-23 23:51:14 +03:00
Leonid Pliushch
2d1346aec2
CI: let build task will depend on 'docker builder'
...
However this setup should be tested if working on non-master branch
since docker builder is disabled on them.
2019-07-23 23:49:13 +03:00
Leonid Pliushch
b97a70a2b0
CI: add support for automatic docker image rebuilding
2019-07-23 23:42:20 +03:00
Leonid Pliushch
bbd9402382
CI: use git client provided by docker image
...
We still can't use the default Cirrus's one...
2019-07-23 12:19:42 +03:00
Leonid Pliushch
9fac976ab1
CI: restore old way for building & uploading packages
...
Do not use pipes for building & uploading packages because:
* They spawn more jobs on Bintray for metadata generation - each upload is
done in a separate session.
* Bintray doesn't handle well concurrent uploads and metadata can be corrupted.
This happened in all recent builds of platform independent packages - in
each upload task file had a same name and that triggered problem with metadata.
* Using delays for workaround for a problem described above works, but isn't
safe.
2019-07-23 03:08:34 +03:00
Leonid Pliushch
c18beff6c0
CI: better implementation for workaround introduced in f75cb1d4f2
...
Use predefined upload delays for each pipe.
2019-07-22 22:38:32 +03:00
Leonid Pliushch
f57bb95929
CI: fix missing artifacts for test builds
2019-07-21 01:21:31 +03:00
Leonid Pliushch
ca8f0d0b74
CI: use pipe instead of separate tasks
...
No more need to pass packages between tasks through http cache but will require
a separate configuration for earch architecture.
2019-07-20 23:01:15 +03:00
Leonid Pliushch
2563fd812c
update CI setup
...
* Move package building/uploading implementation from config to a separate script.
* Implement new tag '%ci:no-build' to allow immediately stop build with status 'passed'.
%ci:no-build
2019-07-20 13:33:55 +03:00
Leonid Pliushch
63f6d320d1
CI: do not encrypt username & gpg subject
...
These values are not sensitive data.
Also encryption of these values have side effect when they are same as part of
log output: e.g. word "termux-licenses" will become "SECRET-licenses" which may be confusing.
2019-05-19 21:55:40 +03:00
Leonid Pliushch
5fc3491354
CI: let tag '%ci:reset-backlog' will affect PRs too
2019-05-06 16:18:27 +03:00
Leonid Pliushch
f086ecdfda
CI: modify behaviour of tag "%ci:reset-backlog"
...
Now it will build current commit and skip anything else.
2019-05-06 16:14:54 +03:00
Leonid Pliushch
f1999ddddc
CI: use unique keys when caching *.deb files
...
Make sure that upload task will always receive debs from the corresponding
build task.
2019-05-06 15:56:40 +03:00
Leonid Pliushch
eeec7d22e4
CI: look only for tags specified in commit message
...
Because for pull requests environment variable CIRRUS_CHANGE_MESSAGE contains
only their description.
%ci:reset-backlog
2019-05-06 15:52:06 +03:00
Leonid Pliushch
dd4438c533
CI: improve regex for checking tags
2019-05-06 15:42:29 +03:00
Leonid Pliushch
5897248cc1
CI: backlog-resetting tag should work for all tasks
2019-05-06 15:33:50 +03:00
Leonid Pliushch
7c8fc5ed04
CI: change tag for resetting build backlog
...
Needed because Github recognises @ci as mention of user.
%ci:reset-backlog
2019-05-06 15:31:50 +03:00
Leonid Pliushch
05782bc8d8
CI: add tag that allows to reset build backlog
...
Just add '@ci:reset-backlog' to commit message and build should be skipped.
CI should finish tasks with status 'success'.
@ci:reset-backlog
2019-05-06 15:24:49 +03:00
Leonid Pliushch
a882e8d8b7
CI: better way to pass packages between tasks
2019-05-03 00:47:26 +03:00
Leonid Pliushch
fddb17f159
CI: refactor configuration file
...
Cache instructions will query system to check if existing cache is available.
While cache will unlikely to be available in build task, it is better to
make it queried before build so if cache folder appear, it will be deleted by
`rm -rf "debs-${TERMUX_ARCH}"`.
2019-05-02 15:25:28 +03:00
Leonid Pliushch
0fdd2c60a8
CI: fix configuration file
...
Do not delete folder which is lately used...
2019-05-02 15:10:14 +03:00
Leonid Pliushch
f9b427dbf7
CI: cache deb files properly so all of them passed to upload task
2019-05-02 14:59:28 +03:00
Leonid Pliushch
599d2509d7
CI: switch to Cirrus
2019-05-01 23:45:46 +03:00