summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorOwen Jacobson <owen@grimoire.ca>2020-07-31 15:44:11 -0400
committerGitHub <noreply@github.com>2020-07-31 15:44:11 -0400
commitedf5b562c09964f4a8f72549b955a07f8ca20322 (patch)
tree36476d38b9208a5adb29b8bc46ab0bbf6f83a1e3
parent64e55bc32a48e78a3b08add63b5155adb14744b6 (diff)
parentf6b35d12a4328acc7a0f85c7e383251c2823143b (diff)
Merge pull request #17 from ojacobson/auto-update-nightly
Automate periodic Rust Nightly upgrades.
-rw-r--r--.github/workflows/nightly-rust-update.yml27
-rw-r--r--.travis.yml3
-rw-r--r--README.md10
-rw-r--r--rust-toolchain2
-rwxr-xr-xtools/install-tool-dependencies9
-rwxr-xr-xtools/update-nightly8
6 files changed, 48 insertions, 11 deletions
diff --git a/.github/workflows/nightly-rust-update.yml b/.github/workflows/nightly-rust-update.yml
new file mode 100644
index 0000000..00ff6e6
--- /dev/null
+++ b/.github/workflows/nightly-rust-update.yml
@@ -0,0 +1,27 @@
+name: Update Rust nightly
+on:
+ workflow_dispatch:
+ schedule:
+ # Nothing magic here, I just wanted to avoid the midnight thundering
+ # herd on the first of each month.
+ - cron: '0 5 8 * *'
+
+jobs:
+ nightly-update:
+ name: Update Rust nightly
+ runs-on: ubuntu-latest
+ steps:
+ - uses: actions/checkout@v2
+ - run: tools/update-nightly
+ - run: tools/install-tool-dependencies
+ - run: tools/checks
+ - uses: peter-evans/create-pull-request@v3
+ with:
+ commit-message: Update Rust nightly version.
+ branch: rust-nightly-update
+ title: Update Rust nightly version
+ body: |
+ If these changes look good, merge this pull request to
+ update to the latest Nightly as of today.
+
+ Automatically generated by the nightly-rust-update workflow.
diff --git a/.travis.yml b/.travis.yml
index 5e41e58..64c0120 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -5,8 +5,7 @@ rust:
cache: cargo
install:
- - rustup component add clippy rustfmt
- - cargo install cargo-udeps
+ - tools/install-tool-dependencies
- cargo build
script:
diff --git a/README.md b/README.md
index 4dc7c75..e8ff197 100644
--- a/README.md
+++ b/README.md
@@ -45,16 +45,10 @@ you're willing to take that chance.
To set this up:
-* Install additional Rust components:
+* Install additional Rust components and Cargo binaries:
```bash
- rustup component add clippy rustfmt
- ```
-
-* Install `cargo-udeps`:
-
- ```bash
- cargo install cargo-udeps
+ tools/install-tool-dependencies
```
* Configure Git to use these hooks:
diff --git a/rust-toolchain b/rust-toolchain
index 4eabcfe..4aec5c6 100644
--- a/rust-toolchain
+++ b/rust-toolchain
@@ -1 +1 @@
-nightly-2020-07-26
+nightly-2020-06-10
diff --git a/tools/install-tool-dependencies b/tools/install-tool-dependencies
new file mode 100755
index 0000000..27a9015
--- /dev/null
+++ b/tools/install-tool-dependencies
@@ -0,0 +1,9 @@
+#!/bin/bash -ex
+
+# tools/install-tool-dependencies
+#
+# Install Rust and Cargo components used by tool scripts, which are not part of
+# Cargo.toml.
+
+rustup component add clippy rustfmt
+cargo install cargo-udeps \ No newline at end of file
diff --git a/tools/update-nightly b/tools/update-nightly
new file mode 100755
index 0000000..7567110
--- /dev/null
+++ b/tools/update-nightly
@@ -0,0 +1,8 @@
+#!/bin/bash -ex
+
+# tools/update-nightly
+#
+# Install today's nightly Rust release.
+
+date "+nightly-%Y-%m-%d" > rust-toolchain
+rustup install --profile minimal "$(< rust-toolchain)"