Commit graph

60 commits

Author SHA1 Message Date
Samuel Dionne-Riel 3cd3da04a1 mirror: Add content-type and content-encoding for .json.br 2020-03-25 15:40:00 -04:00
Samuel Dionne-Riel 7d46561471 mirror: Add redirects for json data files 2020-03-25 14:20:05 -04:00
Samuel Dionne-Riel 51104d8cde mirror: Use shell-free calls when possible
Passing a list of parameters to `system` automatically gives us peace of
mind with regards to shell escaping. This is because it will not rely on
a shell invocation to run the given parameters, but directly exec to it.

The left-over shell invocations all use redirection.
2020-03-24 22:29:10 -04:00
Samuel Dionne-Riel 0568ef3c4a mirror: Download packages.json.br and options.json.br 2020-03-24 22:24:29 -04:00
Samuel Dionne-Riel badde7c674 mirror: allow downloadFile to select a specific product 2020-03-24 22:24:11 -04:00
Samuel Dionne-Riel 13154f8e86 mirror: Convert all system use to run* 2020-03-24 20:05:59 -04:00
Samuel Dionne-Riel 877e989376 mirror: Cosmetic change to the release info output 2020-03-24 19:59:57 -04:00
Samuel Dionne-Riel 84c6a24dac mirror: Add dry-run mode to better test script 2020-03-24 19:59:50 -04:00
Samuel Dionne-Riel f5d04ea038 mirror: Use experimental "nix-command" feature. 2020-03-24 19:59:45 -04:00
Samuel Dionne-Riel ab952e5863 mirror: Introduce two functions for running commands
They are thin wrappers over `system`, but two main points:

 * They log the (unescaped) command.
 * `run` will auto-die.

This removes the need to pepper `== 0 or die` in the script.
2020-03-24 19:59:39 -04:00
Eelco Dolstra 10188a5679
Fix OVA redirects 2020-03-20 09:52:04 +01:00
Eelco Dolstra 6ba4a48263 Quick hack to fix status.nixos.org 2020-03-17 13:21:57 +01:00
Eelco Dolstra faa521b194 Fix redirects 2020-03-10 15:22:54 +01:00
Rok Garbas 4d53dba964
wrong content 2020-03-10 12:52:59 +01:00
Rok Garbas 15ff4aff86
added error handling 2020-03-10 12:52:09 +01:00
Rok Garbas 0893b43140
channelsDir -> channelName 2020-03-10 12:51:19 +01:00
Rok Garbas a8671842d9
channelsDir -> channelName 2020-03-10 12:49:52 +01:00
Rok Garbas 1729eb92c8
remove not needed lines 2020-03-10 12:48:11 +01:00
Rok Garbas a3e79347be
my poor attempt at perl 2020-03-10 12:15:53 +01:00
Rok Garbas 0ec4463dbd
fixing copy paste typo 2020-03-06 10:32:44 +01:00
Rok Garbas a055dc2cdc
fix a typo and also add redirect for $channel/nixexprs.tar.xz 2020-03-06 10:24:35 +01:00
Rok Garbas 3ef68861db
Push channels to s3://nix-channels bucket 2020-03-05 21:48:33 +01:00
Rok Garbas d1fb4bf67a
Upload channels artifacts (or links to those artifacts) to download.nixos.org
This will enable us to move nixos.org website to other location as
described in nixos/nixos-homepage#326
2020-02-17 13:16:22 +01:00
worldofpeace 751409599d rename iso_graphical to iso_plasma5 2020-01-30 08:28:20 -05:00
Samuel Dionne-Riel c4a61dfe8a mirror-branch: Always exit with 1 on nix-instantiate error
Resolving the values and being fancy is harder than the actual benefits
would give out.

Return all the info we have, and let the pager'd person deal with the
data.
2020-01-02 22:04:43 -05:00
Samuel Dionne-Riel cac10f5360 mirror-branch: Bails when failing to run nix-instantiate
A more durable solution would likely be to make a generic function that
wraps backticks and fails when $? is non-zero, rather than doing it
in-situ. There are other backtick uses that may be problematic
2020-01-02 21:19:58 -05:00
Graham Christensen 7ee70fd479
mirror-nixos-branch.pl: exit 0 if the channel would go back in time
Prometheus now has a configured alert if an update job fails for a
while. Going back in time is not so unusual:

1. a hydra evaluation completes with some failed jobs
2. the channel advances to this commit
3. an admin restarts a failed job
4. the channel would go backward because the evaluation is complete

Since it is not a problem, make it a non-problematic exit code.
2019-11-15 11:01:34 -05:00
Eelco Dolstra fac8ec969e
Revert "Namespace channel pushes in nixpkgs"
This reverts commit 38d2339ca2.
2019-10-29 12:29:31 +01:00
Graham Christensen 38d2339ca2
Namespace channel pushes in nixpkgs
PRs to NixOS are a bit confused about if they should PR to release-* or nixos-* or nixpkgs-*. I think namespacing the refs will go a long way in making it more obvious.
2019-10-29 12:17:25 +01:00
Eelco Dolstra 6165ae664d Push to the nixpkgs repo
Fixes https://github.com/NixOS/nixpkgs/issues/71176.
2019-10-17 19:35:28 +02:00
Samuel Dionne-Riel 81dfa0d65a mirror: sets hash format to base16
From the nix 2.2 changelog:

> nix hash-file and nix hash-path now print hashes in SRI
> format by default. They also use SHA-256 by default
> instead of SHA-512 because that's what we use most of the
> time in Nixpkgs.
2019-04-30 18:24:33 -04:00
Eelco Dolstra 90fcc7be84 Rsync channel redirects to nixos.org 2019-01-24 23:25:12 +01:00
Eelco Dolstra 7f650ec13e Revert "Store the channel redirects in S3"
This reverts commit 763db9879c.
2019-01-24 23:00:11 +01:00
Eelco Dolstra 763db9879c Store the channel redirects in S3 2019-01-24 19:07:26 +01:00
Samuel Dionne-Riel d313d2bd51 Fixes channel going back in time due to incomplete change.
The change in d3d33d5b25 changed how the
locally saved channel information was saved on the local machine.

 * d3d33d5b25 (diff-682bf482f6dd273f1c3c49afd99b4660R192)

The changeset did *not* change the guard clause, which now made it act
like this:

 1. Try readlink on the file
 2. (bail as it's undefined)

The new behaviour is as more or less expected:

 1. Reads the file if available
 2. Split the URL components
 3. Keep the last bit

This can give us an empty string, which will compare to `-1` thus
fulfilling the need.
2018-08-25 23:18:47 -04:00
Eelco Dolstra e9587f9388 d3g5gsiof5omrk.cloudfront.net -> releases.nixos.org 2018-07-19 16:01:55 +02:00
Samuel Dionne-Riel 2181f3c02a Adds filename to sha256 file for use with sha256 -c
The manpage says:

> The  sums  are  computed as described in FIPS-180-2.  When checking, the input should be a former
> output of this program.  The default mode is to print a line with checksum, **a space, a  character
> indicating  input  mode ('*' for binary, ' ' for text or where binary is insignificant),** and name
> for each FILE.

By adding the filename to the generated sha256 file, a user would be
able to download an iso, the sha256 file, then use `sha256 -c
[file].iso.sha256` to verify the file.

* * *

This fixes nixos-homepage#224
2018-06-06 18:11:16 -04:00
Eelco Dolstra 9f96e1e25d
Improve error message 2018-02-06 16:45:13 +01:00
Eelco Dolstra c6428851dc
mirror-nixos-branch: Update the Git repo last 2017-07-21 12:48:14 +02:00
Eelco Dolstra b6c049019a
mirror-nixos-branch.pl: Call index-debuginfo 2017-07-07 17:12:25 +02:00
Michael Weiss c3e8e3badb Fix the displayed hash name (SHA-512 -> SHA-256)
The HTML pages for each channel are showing the SHA-256 hash of each
file but the table header actually referred to it as an "SHA-512 hash".
2017-03-31 06:39:24 +02:00
Eelco Dolstra 1c07d6dd08
Lock the Git repo 2016-12-05 11:50:17 +01:00
Eelco Dolstra b74e03a870 Revert "Disable programs.sqlite generation"
This reverts commit 7f2bbc884c.
2016-11-10 18:10:08 +01:00
Eelco Dolstra 6391c4dcec Fix check for release existance
We no longer have a github-link file, so this check always failed. As
a result, we were constantly re-uploading releases.
2016-10-21 20:10:53 +02:00
Eelco Dolstra 038c8ee8d4 Update the channels repo early
This way, users of the nixpkgs-channels repo don't have to wait for
all the slow stuff to finish (like index generation and copying of
ISOs).
2016-10-21 19:22:05 +02:00
Eelco Dolstra 7f2bbc884c Disable programs.sqlite generation 2016-10-21 18:27:28 +02:00
Eelco Dolstra eea0729481 Generate a simple directory listing 2016-09-29 11:50:14 +02:00
Eelco Dolstra 6cb926311e Only update the release link if the release has changed 2016-09-29 10:55:11 +02:00
Eelco Dolstra fcf5a77736 Add an empty file at the release prefix for nix-channel compatibility
nix-channel expects the prefix to exist (not return a 404).
2016-09-26 19:50:36 +02:00
Eelco Dolstra d3d33d5b25 Store releases in S3
Fixes #7.
2016-09-26 18:06:51 +02:00