diff --git a/README.md b/README.md index 466e4c227..dc35b9a10 100644 --- a/README.md +++ b/README.md @@ -8,9 +8,10 @@ CodeFactor CodeFactor + Awesome - + 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! @@ -143,3 +144,7 @@ This project was mainly coded to the following albums: * [Bloc Party - Silent Alarm](https://open.spotify.com/album/6SsIdN05HQg2GwYLfXuzLB) * [Maxthor - Another World](https://open.spotify.com/album/3tklE2Fgw1hCIUstIwPBJF) * [Alun Tan Lan - Y Distawrwydd](https://open.spotify.com/album/0c32OywcLpdJCWWMC6vB8v) + +## Licensing + +[![FOSSA Status](https://app.fossa.io/api/projects/git%2Bgithub.com%2Fwailsapp%2Fwails.svg?type=large)](https://app.fossa.io/projects/git%2Bgithub.com%2Fwailsapp%2Fwails?ref=badge_large) diff --git a/azure-pipelines.yml b/azure-pipelines.yml new file mode 100644 index 000000000..2bf81411e --- /dev/null +++ b/azure-pipelines.yml @@ -0,0 +1,138 @@ +# 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'