Commit a58125e
build: drop the appstore target in favour of dist (#634)
Closes #622.
The Makefile had two packaging targets. `dist` copies an explicit allowlist
(`all_src`) and is what ships: `release.yml` points `artifact-glob` at
`build/dist/richdocuments.tar.gz` and the reusable release workflow runs
`make dist`. `appstore` rsynced the whole working tree and subtracted a
hand-maintained exclude list, writing to `build/richdocuments.tar.gz`, which
nothing reads.
Only the denylist rotted. It now lets through 19 tracked root entries that are
not part of `all_src`:
.eslintrc.json .github .php-cs-fixer.dist.php .prettierrc.json
.tsconfig.json .well-known AGENTS.md CHANGELOG.md
CLAUDE.md CODE_OF_CONDUCT.md SECURITY.md SUPPORT.md
package.json pnpm-lock.yaml pnpm-workspace.yaml sonar-project.properties
src tsconfig.json vite.config.ts
It also excluded `vendor/bin` and `vendor-bin` but never `vendor` or
`node_modules`, so after any build it packaged those too. Five of its excludes
name files that no longer exist at all (`.drone.star`, `.php_cs.dist`,
`.scrutinizer.yml`, `nbproject`, `screenshots`), and it called
`occ integrity:sign-app` unconditionally, so it failed outright without release
certificates present.
Deleting it rather than extending the exclude list: an allowlist cannot silently
pick up new root files the way this one just did - `pnpm-workspace.yaml` joined
the list days after the issue was filed. `activity`, `oauth2` and `customgroups`
already have no such target, and the reusable release workflow now asserts that
artifacts are free of development files, so an appstore-style tarball would fail
that gate anyway.
Removed with it, all dead once the target is gone: `project_dir`, `sign_dir`,
`appstore_dir`, `source_dir`, `package_name`, and a duplicate `occ=` assignment
that the later `occ=$(CURDIR)/../../occ` already overrode - the earlier one
pointed at `../core/occ`, which for an app at `apps/<app>/` resolves to
`apps/core/occ` and never existed. Also dropped the two references to
`$(bower_deps)`, a variable no longer defined anywhere since the bower rules
were removed in #623.
The released artifact is unchanged, verified rather than argued: `make dist` in
`owncloudci/php:8.3` produces a tarball whose 171 entries are byte-identical to
the one built from the parent commit, and `make help` output is identical too.
Signed-off-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
Co-authored-by: Thomas Müller <323649642+oc-tmueller@users.noreply.github.com>
Co-authored-by: Claude Opus 5 (1M context) <noreply@anthropic.com>1 parent 90e6cd8 commit a58125e
2 files changed
Lines changed: 3 additions & 40 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
99 | 99 | | |
100 | 100 | | |
101 | 101 | | |
102 | | - | |
| 102 | + | |
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
6 | 6 | | |
7 | 7 | | |
8 | 8 | | |
9 | | - | |
10 | 9 | | |
11 | 10 | | |
12 | 11 | | |
13 | 12 | | |
14 | 13 | | |
15 | 14 | | |
16 | | - | |
17 | | - | |
18 | | - | |
19 | | - | |
20 | 15 | | |
21 | | - | |
22 | 16 | | |
23 | 17 | | |
24 | 18 | | |
| |||
27 | 21 | | |
28 | 22 | | |
29 | 23 | | |
30 | | - | |
31 | | - | |
32 | | - | |
33 | | - | |
34 | | - | |
35 | | - | |
36 | | - | |
37 | | - | |
38 | | - | |
39 | | - | |
40 | | - | |
41 | | - | |
42 | | - | |
43 | | - | |
44 | | - | |
45 | | - | |
46 | | - | |
47 | | - | |
48 | | - | |
49 | | - | |
50 | | - | |
51 | | - | |
52 | | - | |
53 | | - | |
54 | | - | |
55 | | - | |
56 | | - | |
57 | | - | |
58 | | - | |
59 | | - | |
60 | | - | |
61 | 24 | | |
62 | 25 | | |
63 | 26 | | |
| |||
97 | 60 | | |
98 | 61 | | |
99 | 62 | | |
100 | | - | |
| 63 | + | |
101 | 64 | | |
102 | 65 | | |
103 | 66 | | |
| |||
124 | 87 | | |
125 | 88 | | |
126 | 89 | | |
127 | | - | |
| 90 | + | |
128 | 91 | | |
129 | 92 | | |
130 | 93 | | |
| |||
0 commit comments