diff --git a/.github/workflows/latest-pre.yml b/.github/workflows/latest-pre.yml new file mode 100644 index 000000000..cfd681631 --- /dev/null +++ b/.github/workflows/latest-pre.yml @@ -0,0 +1,32 @@ +name: latest pre-release +on: + push: + tags: + - '**-pre**' +jobs: + + build: + name: Test Build Latest Pre-Release + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + steps: + + - name: Set up Go 1.12 + uses: actions/setup-go@v1 + with: + go-version: 1.12 + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v1 + + - name: Get dependencies + run: | + go get -v -d ./... + - name: Build + run: go build -v ./cmd/wails + + - name: Test + run: ./wails version diff --git a/.github/workflows/pr.yml b/.github/workflows/pr.yml new file mode 100644 index 000000000..985447a65 --- /dev/null +++ b/.github/workflows/pr.yml @@ -0,0 +1,32 @@ +name: pr +on: + pull_request: + branches: + - develop +jobs: + + build: + name: Test Build PR + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + steps: + + - name: Set up Go 1.12 + uses: actions/setup-go@v1 + with: + go-version: 1.12 + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v1 + + - name: Get dependencies + run: | + go get -v -d ./... + - name: Build + run: go build -v ./cmd/wails + + - name: Test + run: ./wails version \ No newline at end of file diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml new file mode 100644 index 000000000..128d378dd --- /dev/null +++ b/.github/workflows/release.yml @@ -0,0 +1,34 @@ +name: release +on: + push: + branches: + - master + tags: + - '!**pre**' +jobs: + + build: + name: Test Build Latest Release + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [ubuntu-latest, windows-latest, macOS-latest] + steps: + + - name: Set up Go 1.12 + uses: actions/setup-go@v1 + with: + go-version: 1.12 + id: go + + - name: Check out code into the Go module directory + uses: actions/checkout@v1 + + - name: Get dependencies + run: | + go get -v -d ./... + - name: Build + run: go build -v ./cmd/wails + + - name: Test + run: ./wails version \ No newline at end of file diff --git a/README.md b/README.md index c068bf93d..efc76bec3 100644 --- a/README.md +++ b/README.md @@ -11,7 +11,8 @@ Awesome - Pipelines + Release Pipelines + Pre-Release Pipelines

The traditional method of providing web interfaces to Go programs is via a built-in web server. Wails offers a different approach: it provides the ability to wrap both Go code and a web frontend into a single binary. Tools are provided to make this easy for you by handling project creation, compilation and bundling. All you have to do is get creative! diff --git a/azure-pipelines.yaml b/azure-pipelines.yaml deleted file mode 100644 index 2bf81411e..000000000 --- a/azure-pipelines.yaml +++ /dev/null @@ -1,138 +0,0 @@ -# avoid double trigger by applying some rules -# start a pipeline when push to 'master' branch -trigger: -- master -# or when pull request on 'develop' branch -pr: -- develop - -# for now there is only one stage 'Build' -# in the future we could use multistage strategy for releases -stages: -- stage: Build - - # there are 3 jobs - # one for each os - jobs: - - deployment: Linux - displayName: Lin - variables: - GOPATH: '$(Agent.BuildDirectory)/gopath' # Go workspace path - GOROOT: '$(Agent.BuildDirectory)/go' # Go installation path - GOBIN: '$(GOPATH)/bin' # Go binaries path - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'Ubuntu-16.04' - environment: 'linux-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # go version 1.12.7 - - script: | - wget "https://storage.googleapis.com/golang/go1.12.7.linux-amd64.tar.gz" --output-document "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - tar -C '$(Agent.BuildDirectory)' -xzf "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - displayName: 'Install Go 1.12.7 Linux' - - script: | - mkdir -p '$(GOBIN)' - mkdir -p '$(GOPATH)/pkg' - mkdir -p '$(GOROOT)' - shopt -s extglob - shopt -s dotglob - echo '##vso[task.prependpath]$(GOBIN)' - echo '##vso[task.prependpath]$(GOROOT)/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(modulePath)' - displayName: 'Check we have output' - - - deployment: Mac - displayName: Mac - variables: - GOPATH: '$(Agent.BuildDirectory)/gopath' # Go workspace path - GOROOT: '$(Agent.BuildDirectory)/go' # Go installation path - GOBIN: '$(GOPATH)/bin' # Go binaries path - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'macOS-10.14' - environment: 'mac-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # go version 1.12.7 - - script: | - wget "https://storage.googleapis.com/golang/go1.12.7.darwin-amd64.tar.gz" --output-document "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - tar -C '$(Agent.BuildDirectory)' -xzf "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - displayName: 'Install Go 1.12.7 Linux' - - script: | - mkdir -p '$(GOBIN)' - mkdir -p '$(GOPATH)/pkg' - mkdir -p '$(GOROOT)' - shopt -s extglob - shopt -s dotglob - echo '##vso[task.prependpath]$(GOBIN)' - echo '##vso[task.prependpath]$(GOROOT)/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(modulePath)' - displayName: 'Check we have output' - - - deployment: Win - displayName: Win - variables: - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'windows-2019' - environment: 'win-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # Go tool installer - # Find in cache or download a specific version of Go and add it to the PATH - - task: GoTool@0 - inputs: - version: '1.12.7' - goPath: '$(Agent.BuildDirectory)/go' - goBin: '$(Agent.BuildDirectory)/go/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(Agent.BuildDirectory)/go/bin' - displayName: 'Check we have output' diff --git a/azure-pipelines.yml b/azure-pipelines.yml deleted file mode 100644 index 2bf81411e..000000000 --- a/azure-pipelines.yml +++ /dev/null @@ -1,138 +0,0 @@ -# avoid double trigger by applying some rules -# start a pipeline when push to 'master' branch -trigger: -- master -# or when pull request on 'develop' branch -pr: -- develop - -# for now there is only one stage 'Build' -# in the future we could use multistage strategy for releases -stages: -- stage: Build - - # there are 3 jobs - # one for each os - jobs: - - deployment: Linux - displayName: Lin - variables: - GOPATH: '$(Agent.BuildDirectory)/gopath' # Go workspace path - GOROOT: '$(Agent.BuildDirectory)/go' # Go installation path - GOBIN: '$(GOPATH)/bin' # Go binaries path - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'Ubuntu-16.04' - environment: 'linux-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # go version 1.12.7 - - script: | - wget "https://storage.googleapis.com/golang/go1.12.7.linux-amd64.tar.gz" --output-document "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - tar -C '$(Agent.BuildDirectory)' -xzf "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - displayName: 'Install Go 1.12.7 Linux' - - script: | - mkdir -p '$(GOBIN)' - mkdir -p '$(GOPATH)/pkg' - mkdir -p '$(GOROOT)' - shopt -s extglob - shopt -s dotglob - echo '##vso[task.prependpath]$(GOBIN)' - echo '##vso[task.prependpath]$(GOROOT)/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(modulePath)' - displayName: 'Check we have output' - - - deployment: Mac - displayName: Mac - variables: - GOPATH: '$(Agent.BuildDirectory)/gopath' # Go workspace path - GOROOT: '$(Agent.BuildDirectory)/go' # Go installation path - GOBIN: '$(GOPATH)/bin' # Go binaries path - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'macOS-10.14' - environment: 'mac-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # go version 1.12.7 - - script: | - wget "https://storage.googleapis.com/golang/go1.12.7.darwin-amd64.tar.gz" --output-document "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - tar -C '$(Agent.BuildDirectory)' -xzf "$(Agent.BuildDirectory)/go1.12.7.tar.gz" - displayName: 'Install Go 1.12.7 Linux' - - script: | - mkdir -p '$(GOBIN)' - mkdir -p '$(GOPATH)/pkg' - mkdir -p '$(GOROOT)' - shopt -s extglob - shopt -s dotglob - echo '##vso[task.prependpath]$(GOBIN)' - echo '##vso[task.prependpath]$(GOROOT)/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(modulePath)' - displayName: 'Check we have output' - - - deployment: Win - displayName: Win - variables: - GOMODULE: 'on' - modulePath: '$(Agent.BuildDirectory)/wails' # Path to the module's code - pool: - vmImage: 'windows-2019' - environment: 'win-dev' - strategy: - runOnce: - deploy: - steps: - - checkout: self # self represents the repo where the initial Pipelines YAML file was found - clean: true # whether to fetch clean each time - path: wails # path to check out source code, relative to the agent's build directory (e.g. \_work\1) - # Go tool installer - # Find in cache or download a specific version of Go and add it to the PATH - - task: GoTool@0 - inputs: - version: '1.12.7' - goPath: '$(Agent.BuildDirectory)/go' - goBin: '$(Agent.BuildDirectory)/go/bin' - displayName: 'Set up the Go workspace' - - script: | - go version - go get -v -d ./... - cd cmd/wails - go install - workingDirectory: '$(modulePath)' - displayName: 'Get dependencies, then build' - - script: | - wails version - workingDirectory: '$(Agent.BuildDirectory)/go/bin' - displayName: 'Check we have output'