Commit graph

49 commits

Author SHA1 Message Date
Zhaofeng Li 94a1d44a10 server: Only read PUT payload up to the claimed size 2023-03-21 18:45:34 -06:00
Zhaofeng Li ba8bd5d66c Thanks clippy 2023-03-21 18:45:34 -06:00
Zhaofeng Li 22626efd35 Trivial semver-incompatible upgrades 2023-03-05 11:05:11 -07:00
Zhaofeng Li c3c7c10c05 Upgrade toml 2023-03-05 11:05:11 -07:00
Zhaofeng Li 97285de54f Upgrade base64 2023-03-05 11:05:11 -07:00
Zhaofeng Li 7f62e92d71 server: Upgrade fastcdc 2023-03-05 11:05:11 -07:00
Zhaofeng Li b6002b413c server: Upgrade aws-sdk-rust 2023-03-05 11:05:11 -07:00
Zhaofeng Li 18ca2cf29a Update deps 2023-03-05 11:05:11 -07:00
Zhaofeng Li 863f8dcca3 Revert "server: Allow configuring max database connections"
Causes issues with SQLite. To be investigated further.

This reverts commit 9fdec3397d.
2023-02-11 01:42:14 -07:00
Zhaofeng Li 9fdec3397d server: Allow configuring max database connections
We set it to 20 by default. The SQLx default is 10.
2023-02-11 01:16:55 -07:00
Zhaofeng Li a2bc969594 rustfmt 2023-01-29 12:01:54 -07:00
Zhaofeng Li a113845095 server/upload_path: Remove already fixed FIXME 2023-01-29 12:01:54 -07:00
Zhaofeng Li 3c8bebf6b5 upload-path: Support including the upload info as part of the PUT body
Often times there are tight limits on how large headers can be.
2023-01-29 12:01:54 -07:00
Zhaofeng Li 00c3024c41 server: Use the same read_chunk_async implementation 2023-01-29 12:01:54 -07:00
Zhaofeng Li 33d8dfabbd Use common constant for X-Attic-Nar-Info header 2023-01-29 12:01:54 -07:00
Zhaofeng Li 44e179362b server/binary_cache: No need to fetch all chunks for narinfo 2023-01-26 23:17:45 -07:00
Zhaofeng Li 8b52796dcb server/upload_path: Create chunkrefs during the upload 2023-01-17 14:10:27 -07:00
Zhaofeng Li 5b42839f58 Expose deduplication ratio to client 2023-01-17 14:10:27 -07:00
Zhaofeng Li 19111317f7 server/chunking: Add a couple of test cases on buffer size boundaries 2023-01-17 14:10:27 -07:00
Zhaofeng Li 99202303be Fix build with nixpkgs 22.11
We temporarily patch sea-orm to build with a lower MSRV.
2023-01-16 14:14:14 -07:00
Charlotte 🦝 Delenk c2d1a98e3d
fix null insertion in chunkref table 2023-01-16 14:29:11 +01:00
Charlotte 🦝 Delenk fb77c7eb2b
config.rs: Add env variable for db url 2023-01-15 18:38:28 +01:00
Zhaofeng Li fb1101f54d server/upload-path: Set completeness hint when NAR is deduplicated 2023-01-14 23:55:11 -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 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 3d1961c0ab server: Allow setting an alternative substituter 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 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 eb34b8ee99 attic: Allow disabling tokio
Not needed at all for parsing usecases.
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 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 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 b25ae9f777 server/error: Log certain errors on error level 2023-01-02 23:29:09 -07:00
Zhaofeng Li 49f2ccbff8 server/adm: Also honor ATTIC_SERVER_CONFIG_BASE64 2023-01-01 20:59:02 -07:00
Zhaofeng Li 0c1f362a62 server: Add --mode check-config 2023-01-01 20:59:02 -07:00
Zhaofeng Li a3636339e0 Update comments to reflect actual implementation 2023-01-01 20:59:02 -07:00
Zhaofeng Li 5aa1623dc2 Initial public commit 2022-12-31 17:01:07 -07:00