mirror of
https://github.com/rust-lang/rust.git
synced 2024-11-27 17:24:06 +00:00
6c5d199d57
This updates all the deploy scripts and the deploy workflow. The deploy workflow now runs the metadata collector to collect the lint documentation. It also changes the files that are checked out in the deploy workflow from master and adds an explanation why we have to do this.
66 lines
1.7 KiB
Bash
66 lines
1.7 KiB
Bash
#!/bin/bash
|
|
|
|
set -ex
|
|
|
|
echo "Removing the current docs for master"
|
|
rm -rf out/master/ || exit 0
|
|
|
|
echo "Making the docs for master"
|
|
mkdir out/master/
|
|
cp util/gh-pages/index.html out/master
|
|
cp util/gh-pages/lints.json out/master
|
|
|
|
if [[ -n $TAG_NAME ]]; then
|
|
echo "Save the doc for the current tag ($TAG_NAME) and point stable/ to it"
|
|
cp -Tr out/master "out/$TAG_NAME"
|
|
ln -sf "$TAG_NAME" out/stable
|
|
fi
|
|
|
|
if [[ $BETA = "true" ]]; then
|
|
echo "Update documentation for the beta release"
|
|
cp -r out/master/* out/beta
|
|
fi
|
|
|
|
# Generate version index that is shown as root index page
|
|
cp util/gh-pages/versions.html out/index.html
|
|
|
|
echo "Making the versions.json file"
|
|
python3 ./util/versions.py out
|
|
|
|
# Now let's go have some fun with the cloned repo
|
|
cd out
|
|
git config user.name "GHA CI"
|
|
git config user.email "gha@ci.invalid"
|
|
|
|
if [[ -n $TAG_NAME ]]; then
|
|
# track files, so that the following check works
|
|
git add --intent-to-add "$TAG_NAME"
|
|
if git diff --exit-code --quiet -- $TAG_NAME/; then
|
|
echo "No changes to the output on this push; exiting."
|
|
exit 0
|
|
fi
|
|
# Add the new dir
|
|
git add "$TAG_NAME"
|
|
# Update the symlink
|
|
git add stable
|
|
# Update versions file
|
|
git add versions.json
|
|
git commit -m "Add documentation for ${TAG_NAME} release: ${SHA}"
|
|
elif [[ $BETA = "true" ]]; then
|
|
if git diff --exit-code --quiet -- beta/; then
|
|
echo "No changes to the output on this push; exiting."
|
|
exit 0
|
|
fi
|
|
git add beta
|
|
git commit -m "Automatic deploy to GitHub Pages (beta): ${SHA}"
|
|
else
|
|
if git diff --exit-code --quiet; then
|
|
echo "No changes to the output on this push; exiting."
|
|
exit 0
|
|
fi
|
|
git add .
|
|
git commit -m "Automatic deploy to GitHub Pages: ${SHA}"
|
|
fi
|
|
|
|
git push "$SSH_REPO" "$TARGET_BRANCH"
|