mirror of
https://github.com/ryantm/nixpkgs-update.git
synced 2024-12-17 16:31:47 +03:00
b4e91fbc30
closes #9
48 lines
1.0 KiB
Bash
Executable File
48 lines
1.0 KiB
Bash
Executable File
#! /usr/bin/env bash
|
|
set -euxo pipefail
|
|
|
|
LOG_FILE=~/.nix-update/ups.log
|
|
mkdir -p "$(dirname $LOG_FILE)"
|
|
touch $LOG_FILE
|
|
|
|
SCRIPT_DIR="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"
|
|
|
|
GITHUB_TOKEN="$(cat "$SCRIPT_DIR"/github_token.txt)"
|
|
export GITHUB_TOKEN
|
|
|
|
ARGUMENTS=$(cat packages-to-update.txt)
|
|
|
|
NIXPKGS=$HOME/.cache/nixpkgs
|
|
if ! [ -d "$NIXPKGS" ]
|
|
then
|
|
hub clone nixpkgs "$NIXPKGS" # requires that user has forked nixpkgs
|
|
cd "$NIXPKGS"
|
|
git remote add upstream https://github.com/NixOS/nixpkgs
|
|
git fetch upstream
|
|
git fetch origin staging
|
|
git fetch upstream staging
|
|
fi
|
|
|
|
cd "$NIXPKGS"
|
|
|
|
export DRY_RUN=true
|
|
|
|
echo "
|
|
|
|
$(date -Iseconds) New run of ups.sh" >> $LOG_FILE
|
|
|
|
OK_TO_PR_AT=0
|
|
IFS=$'\n'
|
|
for a in $ARGUMENTS
|
|
do
|
|
unset IFS
|
|
echo "$(date -Iseconds) $a" >> $LOG_FILE
|
|
if eval "$SCRIPT_DIR/up.sh $a $OK_TO_PR_AT 3>>$LOG_FILE"
|
|
then
|
|
echo "$(date -Iseconds) SUCCESS" >> $LOG_FILE
|
|
OK_TO_PR_AT=$(date +%s -d "+15 minutes")
|
|
else
|
|
echo "$(date -Iseconds) FAIL" >> $LOG_FILE
|
|
fi
|
|
done
|