Commit Graph

111 Commits

Author SHA1 Message Date
c9f1da7027
Update arch libs 2023-11-17 15:09:00 -05:00
Leonidas Spyropoulos
ac5f7eaeff
Remove extra forward slash from archlinux-keyring-wkd-sync.service
Signed-off-by: Leonidas Spyropoulos <artafinde@archlinux.org>
2023-03-20 14:28:13 +01:00
Michel Alexandre Salim
335a31dcf6
Hardcode using bash as make's shell
On Debian/Ubuntu the default shell is dash, and builds are done with
SHELL overridden to dash. Since archlinux-keyring now has Bash-isms in
the install and uninstall targets (for {} expansion), and rewriting it
to drop this is inconvenient (because we'll have to repeat the path
prefixes), hardcode the use of Bash instead.

Use /bin/bash to be compatible with distros that have not finished the
/bin -> /usr/bin migration yet.

Signed-off-by: Michel Alexandre Salim <michel@michel-slm.name>
2022-09-12 09:34:26 +02:00
David Runge
75b7394377
Force symlinking of systemd unit for activation
Makefile:
Force symlinking of systemd unit for activation. If the service is
already installed and activated (symlinked) on the target system, a
non-forced symlink would fail otherwise.
2022-09-02 13:26:29 +02:00
David Runge
85dc87d167
Adapt Makefile to build wkd dir and inspect it
Makefile:
Change the Makefile to build WKD dirs based on a given WKD_FQDN and add
them to WKD_BUILD_DIR.
2022-08-31 11:19:57 +02:00
David Runge
8036719a2e
Allow overriding the script location in WKD sync service
wkd_sync/archlinux-keyring-wkd-sync.service.in:
Replace use of explicit script location (i.e. /usr/bin) with
SCRIPT_TARGET_DIR placeholder.

Makefile:
Create WKD sync service file from input file, replacing the
SCRIPT_TARGET_DIR placeholder with $SCRIPT_TARGET_DIR.
2022-08-04 12:59:24 +02:00
David Runge
1dfc921a87
Make install locations more configurable and clean up
Makefile:
Change Makefile to allow installation of keyring data, systemd units and
scripts more configurable.
This allows user provided overrides via KEYRING_TARGET_DIR,
SCRIPT_TARGET_DIR, SYSTEMD_SYSTEM_UNIT_DIR.
Instead of relying on wildcards, rely on specifically named files, as
this can be reused also in the uninstall target without issue and
provides a clearer overview of what will be installed/uninstalled.
Specifically only make use of DESTDIR in the install and uninstall
targets, which allows easier overrides.
Extend uninstall target to also remove WKD sync related script and
systemd units.
2022-08-04 12:41:23 +02:00
Michel Alexandre Salim
3a43867e1c
Fix the permission of keyring files
These are non-executables, they should be installed 644 rather than 755.

Signed-off-by: Michel Alexandre Salim <michel@michel-slm.name>
2022-07-31 22:55:28 +02:00
David Runge
87b1a4ab72
Install WKD update script/service/timer with Makefile
Makefile:
Extend install target to also install the WKD update script and the
systemd service and timer.
Vendor enable the systemd timer.
2022-07-29 14:37:12 +02:00
Levente Polyak
d0ea790c6a
fix(make): use proper dependency tracking for the build output
Declare the whole keyring data as well as the code as input dependency
for the build target. This way we can properly depend on the build
target for installation without forcing rebuilding on every invocation.

A rebuild will be triggered if either the keyring or the source code
creating the build output changes.

The directories are added to the source dependencies on purpose to
guarantee that changes like deleted files will result in a rebuild.

The mtime of the build directory is force updated on every run to allow
make to track the output artifacts mtime compared against the
dependencies.
2021-11-30 22:54:17 +01:00
David Runge
31a49c89a3
Fail test target under 100% test coverage
Makefile:
Fail coverage report below 100% test coverage.
2021-11-30 22:54:16 +01:00
Levente Polyak
5f36beff90
feature(ci): run keyring integrity check if keyring or code changes 2021-11-30 22:54:15 +01:00
David Runge
a25c267f26
Add more specific coverage configuration
pyproject.toml:
Set specific source for `toolscoverage.paths` (as we only provide one
module).
Set `tools.coverage.run.relative_files` to true (although it is still
bug riddled and does not seem to work as advertized in regards to xml
output: https://github.com/nedbat/coveragepy/issues/963,
https://github.com/nedbat/coveragepy/issues/1147).
Set `tool.coverage.xml.output`, so we don't have to provide it on the
commandline.

Makefile:
Do not provide an output file to the coverage xml call, as we do that in
configuration now.
2021-11-30 22:54:14 +01:00
Levente Polyak
c807a81a57
feature(ci): add testing and coverage data to gitlab ci artifacts 2021-11-30 22:54:14 +01:00
David Runge
f27a7b90c2
Makefile: Use coverage instead of pytest
Makefile:
Run pytest via coverage in `make test` to also generate a coverage
report.
2021-11-30 22:54:13 +01:00
Levente Polyak
0ca74e243b
feature(keyringctl): adding basic infrastructure for running tests 2021-11-30 22:54:13 +01:00
Levente Polyak
10d54ac35d
feature(make): adding fmt target to format the project accordingly 2021-11-30 22:54:12 +01:00
Levente Polyak
58307c629d
chore(keyringctl): modularize the code for overview and testing 2021-11-30 22:54:12 +01:00
Levente Polyak
f6e3a4e94b
feature(keyringctl): use build command to create final artifacts
This allows an easy to use cli which invokes the export function to get
the keyring and uses the ownertrust and revoke functions to write all
artifacts into a target directory.
2021-11-30 22:54:10 +01:00
Levente Polyak
b91e8b983c
feature(keyringctl): move main/packager folders to isolated keyring dir
This helps to structure the layout of the repository better by having
one root folder that contains the actual decomposed keyring structure.
2021-11-30 22:54:09 +01:00
David Runge
153ae31437
Makefile: Change to use new targets
Makefile:
Remove soon unneeded targets for dist and upload.
Add lint and build targets.
Simplify the installation and uninstallation target.
2021-11-30 22:54:07 +01:00
Christian Hesse
eef34e85a2
Prepare release 2021-10-28 11:59:05 +02:00
Christian Hesse
c325a25de5
Prepare release 2021-09-02 22:08:43 +02:00
Christian Hesse
ad65524ec2
Prepare release 2021-08-20 09:07:31 +02:00
Christian Hesse
e3ab3cf2f6
Prepare release 2021-08-18 23:59:07 +02:00
Christian Hesse
39194adf3f
Prepare release 2021-08-02 14:16:38 +02:00
Christian Hesse
ebb7af3852
Prepare release 2021-06-16 09:53:56 +02:00
Christian Hesse
6c54e35916 Prepare release 2021-01-10 21:28:53 +01:00
Christian Hesse
80e1407754 Prepare release 2020-12-10 21:02:08 +01:00
Christian Hesse
3490b904b1 Prepare release 2020-10-28 17:04:48 +01:00
Christian Hesse
93dea57cef Prepare release 2020-08-20 14:23:38 +02:00
Christian Hesse
d34e495c40 Prepare release 2020-08-17 23:46:12 +02:00
Christian Hesse
df0685c894 Prepare release 2020-06-22 17:29:32 +02:00
Christian Hesse
b5dba61b0c Prepare release 2020-06-03 13:49:25 +02:00
Christian Hesse
b0ee67ecc7 Prepare release 2020-04-22 14:56:19 +02:00
Christian Hesse
24aab64152 Prepare release 2020-01-08 14:48:15 +01:00
Christian Hesse
30bf6dbbce Prepare release 2019-12-19 17:01:08 +01:00
Christian Hesse
3a6f172ff9 Prepare release 2019-10-18 09:06:04 +02:00
Christian Hesse
4cf0341ed5 Prepare release 2019-10-11 23:10:52 +02:00
Christian Hesse
41c6a2b92c Prepare release 2019-10-07 23:41:41 +02:00
Christian Hesse
283e940bbe Prepare release 2019-08-27 21:26:42 +02:00
Christian Hesse
c4f33de41d Prepare release 2019-08-05 09:57:20 +02:00
Christian Hesse
06553feca9 Prepare release 2019-01-23 22:55:41 +01:00
Christian Hesse
b654887de7 Prepare release 2019-01-22 15:18:53 +01:00
Christian Hesse
cd5d6983b9 Prepare release 2018-12-18 09:19:28 +01:00
Christian Hesse
7a78f814cc Prepare release 2018-11-28 13:10:34 +01:00
Christian Hesse
51cb7ec077 Prepare release 2018-11-26 16:40:40 +01:00
Christian Hesse
586568d991 Prepare release 2018-11-22 12:29:45 +01:00
Christian Hesse
833e213974 Prepare release 2018-11-13 20:32:03 +01:00
Pierre Schmitz
cc8ad71eac Prepare release 2018-10-31 17:34:21 +01:00