name: Release

on:
  push:
    tags:
      - boost-*

jobs:
  release-posix:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3
        with:
          path: ${{ github.ref_name }}
          submodules: true

      - name: Cleanup
        shell: bash
        run: |
          find ${{ github.ref_name }} -name ".git" -prune -exec rm -rf {} +

      - name: Create archives
        run: |
          tar -czf ${{ github.ref_name }}.tar.gz ${{ github.ref_name }}
          tar -cJf ${{ github.ref_name }}.tar.xz ${{ github.ref_name }}

      - uses: softprops/action-gh-release@v1
        with:
          files: |
            ${{ github.ref_name }}.tar.gz
            ${{ github.ref_name }}.tar.xz

  release-windows:
    runs-on: windows-latest

    needs: release-posix

    steps:
      - uses: actions/checkout@v3
        with:
          path: ${{ github.ref_name }}
          submodules: true

      - name: Cleanup
        shell: bash
        run: |
          find ${{ github.ref_name }} -name ".git" -prune -exec rm -rf {} +

      - name: Create archives
        shell: cmd
        run: |
          7z a ${{ github.ref_name }}.zip ${{ github.ref_name }}
          7z a ${{ github.ref_name }}.7z ${{ github.ref_name }}

      - uses: softprops/action-gh-release@v1
        with:
          files: |
            ${{ github.ref_name }}.zip
            ${{ github.ref_name }}.7z
