name: ci on: push: branches: [main, master] pull_request: jobs: test: strategy: fail-fast: false matrix: os: [ubuntu-latest, macos-latest, windows-latest] runs-on: ${{ matrix.os }} steps: - uses: actions/checkout@v4 - uses: actions/setup-go@v5 with: go-version-file: go.mod - name: Test run: go test ./... - name: Build GUI shell: bash run: | if [[ "${{ runner.os }}" == "Windows" ]]; then go build -o Navis.exe ./cmd/vpnapp else go build -o Navis ./cmd/vpnapp fi - name: Build CLI run: go build -o Navis-cli ./cmd/vpnclient