# This is a basic workflow to help you get started with Actions name: Auto-CI # Controls when the workflow will run on: # Triggers the workflow on push or pull request events but only for the "master" branch push: branches: [ "master" ] # pull_request: # branches: [ "master" ] schedule: # # UTC time 3:00 = 5:00 CET - cron: '30 3 * * 6' # Allows you to run this workflow manually from the Actions tab workflow_dispatch: # A workflow run is made up of one or more jobs that can run sequentially or in parallel jobs: stayactive: runs-on: ubuntu-latest steps: - name: clone-update-push-delete env: PRIVKEY: ${{ secrets.PRIVKEY }} run: | # convert privkey to valid openssh privkey echo "$PRIVKEY" | tr ' ' '\n' > $GITHUB_WORKSPACE/customkey.orig echo -n > $GITHUB_WORKSPACE/customkey # first line cat $GITHUB_WORKSPACE/customkey.orig | head -n4 | tr '\n' ' ' | sed 's@ $@\n@g' >> $GITHUB_WORKSPACE/customkey # key content cat $GITHUB_WORKSPACE/customkey.orig | egrep -iv '(----|end|begin|openssh|private)' >> $GITHUB_WORKSPACE/customkey # last line cat $GITHUB_WORKSPACE/customkey.orig | tail -n-4 | tr '\n' ' ' | sed 's@ $@\n@g' >> $GITHUB_WORKSPACE/customkey # permission fix chmod 600 $GITHUB_WORKSPACE/customkey # git ssh param export export GIT_SSH_COMMAND="ssh -i $GITHUB_WORKSPACE/customkey -o StrictHostKeyChecking=no" # debug #cat $GITHUB_WORKSPACE/customkey | base64 echo "Github repo: $GITHUB_REPOSITORY" git clone git@github.com:$GITHUB_REPOSITORY.git $GITHUB_WORKSPACE/code || { echo "git clone error"; exit 1; } cd $GITHUB_WORKSPACE/code || { echo "folder change problem"; exit 1; } git branch stayactive git checkout stayactive date >> status.txt git config user.name $GITHUB_REPOSITORY_OWNER git config user.email automation@dummy git add status.txt git commit -m "stay active" git push origin stayactive:stayactive || { echo "Stayactive branch push error"; exit 1; } git push origin -d stayactive || { echo "Stayactive branch delete error"; exit 1; } build-amd64: # The type of runner that the job will run on runs-on: ubuntu-latest # Steps represent a sequence of tasks that will be executed as part of the job steps: # Checks-out your repository under $GITHUB_WORKSPACE, so your job can access it - uses: actions/checkout@v3 - name: build image - AMD64 run: | docker build --rm -t croc/minidlna . || { echo "docker image build failed - amd64"; exit 1; } docker images croc/minidlna - name: push container env: DOCKERHUB_USER: ${{ secrets.DOCKERHUB_USER }} DOCKERHUB_PASS: ${{ secrets.DOCKERHUB_PASS }} run: | echo "$DOCKERHUB_PASS" | docker login --username=$DOCKERHUB_USER --password-stdin docker images | grep -iw minidlna # push latest images docker push croc/minidlna