Skip to content

feat: add ssh support #8

feat: add ssh support

feat: add ssh support #8

Workflow file for this run

on:
push:
branches:
- testing
jobs:
auto_ralease:
name: auto create and push release
runs-on: ubuntu-22.04
steps:
- uses: cachix/install-nix-action@v27
- name: Checkout repository
uses: actions/checkout@master
with:
ref: testing
- name: Generate Release version from date
id: date
run: |
TAG_NAME="testing-$(date +'%Y.%m.%d-%H.%M.%S')"
echo "TAG_NAME=$TAG_NAME" >> $GITHUB_ENV
echo "Tag name will be: $TAG_NAME"
- name: Generate tar.gz from src
id: generate_tar
run: |
PKG_NAME="$(basename "${{ github.repository }}" | sed 's/pkg-//g')"
FILE_NAME="src-${PKG_NAME}.tar.gz"
echo "PKG_NAME=$PKG_NAME" >> $GITHUB_ENV
echo "FILE_NAME=$FILE_NAME" >> $GITHUB_ENV
tar -czvf ${FILE_NAME} src/
FILE_HASH=$(sha256sum ${FILE_NAME} | cut -d ' ' -f 1)
echo "FILE_HASH=$FILE_HASH" >> $GITHUB_ENV
- name: Generate package.nix
id: generate_package
run: |
URL=$(echo \
"https://github.com/${{ github.repository }}/releases/download/${{ env.TAG_NAME }}/${{ env.FILE_NAME }}" \
| sed 's/\//\\\//g'
)
SRC="src = fetchurl {\n url = \"${URL}\";\n sha256 = \"${{ env.FILE_HASH }}\";\n }"
sed -i "s/src = .\/src/src = .\/${{ env.FILE_NAME }}/g" ./package.nix
git add ./${{ env.FILE_NAME }}
nix build
git reset ./${{ env.FILE_NAME }}
sed -i "s/src = .\/${{ env.FILE_NAME }}/${SRC}/g" ./package.nix
sed -i "s/version = \".*\";/version = \"${{ env.TAG_NAME }}\";/g" ./package.nix
sed -i "1s/.*/{\n fetchurl,/" ./package.nix
- name: Create Release
uses: softprops/action-gh-release@v2
with:
name: ${{ env.TAG_NAME }}
tag_name: ${{ env.TAG_NAME }}
prerelease: true
files: |
./${{ env.FILE_NAME }}
./package.nix