Commit graph

168 commits

Author SHA1 Message Date
Zhaofeng Li 4f597e62e2 package.nix: Use cargoLock 2023-01-14 23:55:10 -07:00
Zhaofeng Li e8f9f3c04b Add support for chunking 2023-01-14 23:55:10 -07:00
Zhaofeng Li 93a38d1b1e Move read_chunk_async to attic 2023-01-14 23:55:10 -07:00
Zhaofeng Li 6d3b2bd381 nixos: Provide better error message when credentialsFile is unset 2023-01-14 23:55:10 -07:00
Zhaofeng Li 257a84ad74 nixos: Add atticd-atticadm wrapper
Now `atticd-atticadm` can be used to run `atticadm` as the `atticd`
user. `atticd` is no longer added to the system path.
2023-01-14 23:55:10 -07:00
Zhaofeng Li 740c09beb9 client/push: Change the default number of jobs to 5 2023-01-14 23:55:10 -07:00
Zhaofeng Li db1dbb7a48 client/api: Refactor 2023-01-14 23:55:10 -07:00
Zhaofeng Li 5a8df0b1e8 server/upload_path: Refactor 2023-01-14 23:55:10 -07:00
Zhaofeng Li 6d3d07cb14 server/adm: Make --config/-f a global option 2023-01-14 23:55:10 -07:00
Zhaofeng Li 064a747bb4 server/upload_path: Expose the final file size in the response 2023-01-14 23:55:10 -07:00
Zhaofeng Li 332ac5051c client/get_closure: Add --include-outputs 2023-01-14 23:55:10 -07:00
Zhaofeng Li 8fc6b3935d integration-tests/basic: Increase timeouts
Seems to be timing out on Garnix.
2023-01-08 23:00:53 -07:00
Zhaofeng Li 95378e13dc crane.nix: Add meta 2023-01-08 23:00:53 -07:00
Zhaofeng Li 3d1961c0ab server: Allow setting an alternative substituter endpoint 2023-01-08 23:00:53 -07:00
Zhaofeng Li 0b528b5417 client/use: The access token should set for the substiter endpoint
The substituter endpoint is not necessarily the same as the API
endpoint.
2023-01-08 23:00:53 -07:00
Zhaofeng Li c4f843d4ab server: rustfmt
poke ci
2023-01-08 02:44:45 -07:00
Zhaofeng Li d547c86f08 client/push: Correctly delegate API requests based on cache config 2023-01-08 00:57:22 -07:00
Zhaofeng Li 05a5e9cca8 server: Set a custom header if the cache is public
This can be used as a signal to improve caching. Only done for
the Nix Binary Cache APIs for now.
2023-01-08 00:57:22 -07:00
Zhaofeng Li 6c4d04da74 Migrate to jwt-simple 2023-01-08 00:57:22 -07:00
Zhaofeng Li 1c2173caac token: Update comments to reflect actual implementation 2023-01-08 00:57:22 -07:00
Zhaofeng Li 5657e88cc0 attic/nix_store: Only build methods requiring OsStrExt on Unix 2023-01-08 00:57:22 -07:00
Zhaofeng Li ae995f2203 attic: Only build testing module on Unix 2023-01-08 00:57:22 -07:00
Zhaofeng Li eb34b8ee99 attic: Allow disabling tokio
Not needed at all for parsing usecases.
2023-01-08 00:57:22 -07:00
Zhaofeng Li 6969af2d5e Cargo.toml: Minimize tokio feature flags 2023-01-08 00:57:22 -07:00
Zhaofeng Li 77070b9895 Refactor token into a separate crate 2023-01-08 00:57:22 -07:00
Zhaofeng Li c89f5f0f3f client: Deletions may not "immediately" happen
Aggressive caching may make the effect non-immediate.
2023-01-08 00:57:22 -07:00
Zhaofeng Li ffae7002b3 Explicitly specify the cranes to build 2023-01-08 00:57:22 -07:00
Zhaofeng Li 864b62652b .github: Allow specifying alternative cache in secrets 2023-01-08 00:57:22 -07:00
Zhaofeng Li 982ff75cb2 .github: Ignore failures from nix-installer 2023-01-08 00:57:22 -07:00
Zhaofeng Li 8af6ed71fa .github: Update checkout to v3.3.0 2023-01-08 00:57:22 -07:00
Zhaofeng Li e7f64d80b7 flake.nix: Add attic-static 2023-01-06 15:56:42 -07:00
Zhaofeng Li bb98d5f17c package.nix: Update cargoHash 2023-01-06 15:56:42 -07:00
Zhaofeng Li c3eba65b22 Add garnix config 2023-01-06 00:59:38 -07:00
Zhaofeng Li 979108869d integration-tests: init 2023-01-06 00:59:38 -07:00
Zhaofeng Li 330f4e4ac7 Add NixOS module
Fixes #1. Still needs documentation though.
2023-01-06 00:59:35 -07:00
Zhaofeng Li d1e1cf7a61 flake.nix: Add overlay 2023-01-06 00:59:35 -07:00
Zhaofeng Li b0471c6804 server/config: Support loading HS256 JWT secret from environment variable 2023-01-06 00:59:35 -07:00
Zhaofeng Li 82fb6682d7 Consolidate config loading logic 2023-01-06 00:59:35 -07:00
Zhaofeng Li f1ada7595b server/gc: Fix subquery table locking on Postgres
We definitely need more tests :(
2023-01-06 00:59:35 -07:00
Zhaofeng Li 7b53ce15cd api/v1/upload-path: Inform the client whether the uploaded path is deduplicated 2023-01-04 21:05:07 -07:00
Zhaofeng Li a7578d1896 server: Allow disabling proof of possession 2023-01-04 21:05:07 -07:00
Zhaofeng Li 69366cbe97 Run rustfmt 2023-01-04 21:05:07 -07:00
Zhaofeng Li c04aff7c48 server: Attach tracing context to errors 2023-01-04 21:05:07 -07:00
Zhaofeng Li 27836028f4 server: Rename RemoteFileError to StorageError
Already renamed everywhere else.
2023-01-04 21:05:07 -07:00
Zhaofeng Li 49c7cca94b flake.nix: Add full busybox to Docker image for debugging 2023-01-04 21:05:07 -07:00
Zhaofeng Li 14d8b8f1b0 server/s3: Fix loading of AWS_ACCESS_KEY_ID and AWS_SECRET_ACCESS_KEY 2023-01-04 21:05:07 -07:00
Zhaofeng Li 3fd587315f server: Record uploader JWT subject in objects 2023-01-04 21:05:07 -07:00
Zhaofeng Li f4e52f9ad0 .github/book: Work around PATH issue for now 2023-01-02 23:44:31 -07:00
Zhaofeng Li d93a0f587c .github: Naively dogfood Attic 2023-01-02 23:29:09 -07:00
Zhaofeng Li 50e8e482d0 Add installer script for CI environments 2023-01-02 23:29:09 -07:00