mirror of
				https://github.com/gravitl/netmaker.git
				synced 2025-11-04 03:31:22 +08:00 
			
		
		
		
	
		
			
				
	
	
		
			87 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			87 lines
		
	
	
	
		
			2.4 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: Integration Test
 | 
						|
 | 
						|
on:
 | 
						|
  pull_request:
 | 
						|
    types: [opened, reopened]
 | 
						|
 | 
						|
jobs:
 | 
						|
  build:
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
      - name: Setup Go
 | 
						|
        uses: actions/setup-go@v2
 | 
						|
        with:
 | 
						|
          go-version: 1.18
 | 
						|
      - name: Build
 | 
						|
        run: |
 | 
						|
         env CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build main.go
 | 
						|
         cd netclient
 | 
						|
         env CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
 | 
						|
         env CGO_ENABLED=0 GOOS=freebsd GOARCH=amd64 go build main.go
 | 
						|
         env CGO_ENABLED=0 GOOS=darwin GOARCH=amd64 go build main.go
 | 
						|
         env CGO_ENABLED=0 GOOS=windows GOARCH=amd64 go build main.go
 | 
						|
  linux-gui:
 | 
						|
    runs-on: ubuntu-latest
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
      - name: Setup Go
 | 
						|
        uses: actions/setup-go@v2
 | 
						|
        with:
 | 
						|
          go-version: 1.18
 | 
						|
      - name: Build
 | 
						|
        run: |
 | 
						|
         sudo apt-get install -y gcc libgl1-mesa-dev xorg-dev
 | 
						|
         env CGO_ENABLED=1 GOOS=linux GOARCH=amd64 go build -tags=gui main.go
 | 
						|
  mac-gui:
 | 
						|
    runs-on: macos-latest
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
      - name: Setup Go
 | 
						|
        uses: actions/setup-go@v2
 | 
						|
        with:
 | 
						|
          go-version: 1.18
 | 
						|
      - name: Build mac
 | 
						|
        run: |
 | 
						|
          env CGO_ENABLED=1 GOOS=darwin GOARCH=amd64 go build -tags=gui main.go
 | 
						|
  win-gui:
 | 
						|
    runs-on: windows-latest
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
      - name: Setup Go
 | 
						|
        uses: actions/setup-go@v2
 | 
						|
        with:
 | 
						|
          go-version: 1.18
 | 
						|
      - name: Mysys2 setup
 | 
						|
        uses: msys2/setup-msys2@v2
 | 
						|
        with:
 | 
						|
          install: >-
 | 
						|
            git
 | 
						|
            mingw-w64-x86_64-toolchain
 | 
						|
      - name: Build win gui
 | 
						|
        run: |
 | 
						|
          env CGO_ENABLED=1 GOOS=windows GOARCH=amd64 go build -tags=gui main.go
 | 
						|
  tests:
 | 
						|
    env:
 | 
						|
      DATABASE: sqlite
 | 
						|
    runs-on: ubuntu-22.04
 | 
						|
    steps:
 | 
						|
      - name: Checkout
 | 
						|
        uses: actions/checkout@v2
 | 
						|
      - name: Setup Go
 | 
						|
        uses: actions/setup-go@v2
 | 
						|
        with:
 | 
						|
          go-version: 1.18
 | 
						|
      - name: run tests
 | 
						|
        run: |
 | 
						|
            sudo apt-get install -y gcc libgl1-mesa-dev xorg-dev 
 | 
						|
            go test -p 1 ./... -v
 | 
						|
            go install honnef.co/go/tools/cmd/staticcheck@latest
 | 
						|
            { ~/go/bin/staticcheck  -tags=ee ./... ; }
 | 
						|
        env:
 | 
						|
          DATABASE: sqlite
 | 
						|
          CLIENT_MODE: "off"
 |