percher 1.0.0 → 1.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (48) hide show
  1. package/dist/bin/percher.js +47046 -37756
  2. package/dist/package.json +4 -4
  3. package/dist/src/commands/account.d.ts.map +1 -1
  4. package/dist/src/commands/account.js +3 -3
  5. package/dist/src/commands/account.js.map +1 -1
  6. package/dist/src/commands/admin.d.ts.map +1 -1
  7. package/dist/src/commands/admin.js +4 -4
  8. package/dist/src/commands/admin.js.map +1 -1
  9. package/dist/src/commands/analytics.js +1 -1
  10. package/dist/src/commands/analytics.js.map +1 -1
  11. package/dist/src/commands/apps.d.ts.map +1 -1
  12. package/dist/src/commands/apps.js +27 -19
  13. package/dist/src/commands/apps.js.map +1 -1
  14. package/dist/src/commands/auth.d.ts.map +1 -1
  15. package/dist/src/commands/auth.js +1 -1
  16. package/dist/src/commands/auth.js.map +1 -1
  17. package/dist/src/commands/data.d.ts.map +1 -1
  18. package/dist/src/commands/data.js +17 -7
  19. package/dist/src/commands/data.js.map +1 -1
  20. package/dist/src/commands/deploys.d.ts.map +1 -1
  21. package/dist/src/commands/deploys.js +17 -5
  22. package/dist/src/commands/deploys.js.map +1 -1
  23. package/dist/src/commands/env.d.ts.map +1 -1
  24. package/dist/src/commands/env.js +4 -1
  25. package/dist/src/commands/env.js.map +1 -1
  26. package/dist/src/commands/export.d.ts.map +1 -1
  27. package/dist/src/commands/export.js +2 -2
  28. package/dist/src/commands/export.js.map +1 -1
  29. package/dist/src/commands/github.d.ts.map +1 -1
  30. package/dist/src/commands/github.js +3 -3
  31. package/dist/src/commands/github.js.map +1 -1
  32. package/dist/src/commands/token.d.ts.map +1 -1
  33. package/dist/src/commands/token.js +4 -4
  34. package/dist/src/commands/token.js.map +1 -1
  35. package/dist/src/commands/transfers.js +1 -1
  36. package/dist/src/commands/transfers.js.map +1 -1
  37. package/dist/src/telemetry.d.ts.map +1 -1
  38. package/dist/src/telemetry.js +3 -2
  39. package/dist/src/telemetry.js.map +1 -1
  40. package/dist/templates/dotnet/Dockerfile +5 -3
  41. package/dist/templates/dotnet/app.csproj +1 -1
  42. package/dist/templates/go/Dockerfile +16 -6
  43. package/dist/templates/java/Dockerfile +2 -0
  44. package/dist/templates/laravel/Dockerfile +2 -0
  45. package/dist/templates/phoenix/Dockerfile +2 -0
  46. package/dist/templates/rails/Dockerfile +2 -0
  47. package/dist/templates/rust/Dockerfile +8 -4
  48. package/package.json +4 -4
@@ -6,6 +6,8 @@ COPY --chown=app:app Gemfile ./
6
6
  RUN bundle install --jobs 4 --retry 3
7
7
  COPY --chown=app:app . .
8
8
  RUN chown -R app:app /app /usr/local/bundle
9
+ # A fresh data volume takes this directory's ownership, so the app user can write it.
10
+ RUN mkdir -p /app/data && chown app:app /app/data
9
11
  USER app
10
12
  EXPOSE 3000
11
13
  CMD ["bundle", "exec", "rackup", "-o", "0.0.0.0", "-p", "3000"]
@@ -1,18 +1,22 @@
1
- FROM rust:1.82-alpine AS build
1
+ FROM rust:1-alpine3.24 AS build
2
2
  RUN apk add --no-cache musl-dev
3
3
  WORKDIR /src
4
4
  COPY Cargo.toml Cargo.lock* ./
5
5
  COPY src ./src
6
6
  RUN cargo build --release --bin app
7
7
 
8
- FROM alpine:3.20
8
+ FROM alpine:3.24
9
9
  # tini as PID 1 forwards SIGTERM to the app; without it the bare binary as PID 1
10
10
  # ignores SIGTERM (Linux PID-1 special case) and the container is SIGKILLed on
11
11
  # every stop/redeploy instead of shutting down cleanly.
12
12
  RUN apk add --no-cache ca-certificates tini \
13
13
  && addgroup -S app && adduser -S app -G app
14
- COPY --from=build --chown=app:app /src/target/release/app /app
14
+ # The binary lives outside /app on purpose: Percher mounts the app's
15
+ # persistent data volume at /app/data, which cannot exist if /app is a file.
16
+ COPY --from=build --chown=app:app /src/target/release/app /usr/local/bin/app
17
+ # A fresh data volume takes this directory's ownership, so the app user can write it.
18
+ RUN mkdir -p /app/data && chown app:app /app/data
15
19
  USER app
16
20
  EXPOSE 8080
17
21
  ENTRYPOINT ["/sbin/tini", "--"]
18
- CMD ["/app"]
22
+ CMD ["/usr/local/bin/app"]
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "percher",
3
- "version": "1.0.0",
3
+ "version": "1.0.2",
4
4
  "description": "CLI for the Percher hosting platform — publish apps with one command",
5
5
  "type": "module",
6
6
  "bin": {
@@ -28,9 +28,9 @@
28
28
  "typecheck": "tsc --noEmit"
29
29
  },
30
30
  "dependencies": {
31
- "@percher/client": "^1.0.0",
32
- "@percher/core": "^1.0.0",
33
- "@percher/toml": "^1.0.0",
31
+ "@percher/client": "^1.0.2",
32
+ "@percher/core": "^1.0.2",
33
+ "@percher/toml": "^1.0.2",
34
34
  "cac": "^7.0.0",
35
35
  "picocolors": "^1.1.1"
36
36
  },