diff --git a/.github/workflows/.editorconfig b/.github/workflows/.editorconfig new file mode 100644 index 0000000..7bd3346 --- /dev/null +++ b/.github/workflows/.editorconfig @@ -0,0 +1,2 @@ +[*.yml] +indent_size = 2 diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml new file mode 100644 index 0000000..3781dd8 --- /dev/null +++ b/.github/workflows/CI.yml @@ -0,0 +1,38 @@ +name: CI + +on: + push: + branches: [master] + pull_request: + +jobs: + run-tests: + name: Run test cases + runs-on: ${{ matrix.os }} + strategy: + matrix: + go: [1.15, 1.14] + os: [ubuntu-latest, macos-latest] + + steps: + - uses: actions/checkout@v2 + + - name: Set up Go + uses: actions/setup-go@v2 + with: + go-version: ${{ matrix.go }} + + - name: Run tests + run: | + go test -integration -v ./... + go test -testserver -v ./... + go test -integration -testserver -v ./... + go test -integration -allocator -v ./... + go test -testserver -allocator -v ./... + go test -integration -testserver -allocator -v ./... + go test -race -integration -v ./... + go test -race -testserver -v ./... + go test -race -integration -testserver -v ./... + go test -race -integration -allocator -v ./... + go test -race -testserver -allocator -v ./... + go test -race -integration -allocator -testserver -v ./... diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 1cbefce..0000000 --- a/.travis.yml +++ /dev/null @@ -1,46 +0,0 @@ -language: go -go_import_path: github.com/pkg/sftp - -# current and previous stable releases, plus tip -# remember to exclude previous and tip for macs below -go: - - 1.14.x - - 1.15.x - - tip - -os: - - linux - - osx - -matrix: - exclude: - - os: osx - go: 1.14.x - - os: osx - go: tip - -env: - global: - - GO111MODULE=on - -addons: - ssh_known_hosts: - - bitbucket.org - -install: - - go get -t -v ./... - - ssh-keygen -t rsa -q -P "" -f $HOME/.ssh/id_rsa - -script: - - go test -integration -v ./... - - go test -testserver -v ./... - - go test -integration -testserver -v ./... - - go test -integration -allocator -v ./... - - go test -testserver -allocator -v ./... - - go test -integration -testserver -allocator -v ./... - - go test -race -integration -v ./... - - go test -race -testserver -v ./... - - go test -race -integration -testserver -v ./... - - go test -race -integration -allocator -v ./... - - go test -race -testserver -allocator -v ./... - - go test -race -integration -allocator -testserver -v ./... diff --git a/README.md b/README.md index 1fb700c..536e97b 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ The `sftp` package provides support for file system operations on remote ssh servers using the SFTP subsystem. It also implements an SFTP server for serving files from the filesystem. -[![UNIX Build Status](https://travis-ci.org/pkg/sftp.svg?branch=master)](https://travis-ci.org/pkg/sftp) [![GoDoc](http://godoc.org/github.com/pkg/sftp?status.svg)](http://godoc.org/github.com/pkg/sftp) +![CI Status](https://github.com/pkg/sftp/workflows/CI/badge.svg?branch=master&event=push) [![GoDoc](http://godoc.org/github.com/pkg/sftp?status.svg)](http://godoc.org/github.com/pkg/sftp) usage and examples ------------------