Skip to content

Commit

Permalink
Run ci workflow on v2/. (#260)
Browse files Browse the repository at this point in the history
* Enable aetest tests
* Fix v2/aefix to work with appengine/v2
* Update Contributing docs
  • Loading branch information
KaylaNguyen authored Aug 13, 2021
1 parent d0e56bd commit cefb82f
Show file tree
Hide file tree
Showing 6 changed files with 133 additions and 18 deletions.
94 changes: 94 additions & 0 deletions .github/workflows/ci-v2.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,94 @@
name: ci-v2

on:
push:
branches: [ master, qa ]
pull_request:
branches: [ master, qa ]

jobs:
test-gomod-v2:
runs-on: ubuntu-latest
strategy:
matrix:
go-version: [ '1.11.x', '1.12.x', '1.13.x', '1.14.x', '1.15.x']
env:
working-directory: ./v2

steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout
uses: actions/checkout@v2
- name: Cache go modules
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-${{ matrix.go-version }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-${{ matrix.go-version }}-go-
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@master
- name: Install
working-directory: ${{env.working-directory}}
env:
GO111MODULE: on
run: |
go get .
gcloud components install app-engine-python app-engine-go cloud-datastore-emulator --quiet
- name: Test gomod v2
env:
GO111MODULE: on
working-directory: ${{env.working-directory}}
run: |
export APPENGINE_DEV_APPSERVER=$(which dev_appserver.py)
go test -v -cover -race google.golang.org/appengine/v2/...
# TestAPICallAllocations doesn't run under race detector.
go test -v -cover google.golang.org/appengine/v2/internal/... -run TestAPICallAllocations
test-gopath-v2:
runs-on: ubuntu-latest
strategy:
matrix:
# GOPATH is deprecated in go 1.13.
go-version: [ '1.11.x', '1.12.x']
env:
working-directory: ./v2

steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout
uses: actions/checkout@v2
- name: Cache go modules
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-${{ matrix.go-version }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-${{ matrix.go-version }}-go-
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@master
- name: Install
working-directory: ${{env.working-directory}}
env:
GO111MODULE: off
run: |
go get -u -v $(go list -f '{{join .Imports "\n"}}{{"\n"}}{{join .TestImports "\n"}}' ./... | sort | uniq | grep -v appengine)
go get -u google.golang.org/appengine/v2
gcloud components install app-engine-python app-engine-go cloud-datastore-emulator --quiet
- name: Test gopath v2
working-directory: ${{env.working-directory}}
run: |
export APPENGINE_DEV_APPSERVER=$(which dev_appserver.py)
go test -v -cover -race google.golang.org/appengine/v2/...
# TestAPICallAllocations doesn't run under race detector.
go test -v -cover google.golang.org/appengine/v2/internal/... -run TestAPICallAllocations
35 changes: 31 additions & 4 deletions .github/workflows/ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,11 +12,14 @@ jobs:
strategy:
matrix:
go-version: [ '1.11.x', '1.12.x', '1.13.x', '1.14.x', '1.15.x']

steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout
uses: actions/checkout@v2
- name: Cache go modules
uses: actions/cache@v2
with:
Expand All @@ -26,34 +29,58 @@ jobs:
key: ${{ runner.os }}-${{ matrix.go-version }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-${{ matrix.go-version }}-go-
- name: Checkout
uses: actions/checkout@v2
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@master
- name: Install
env:
GO111MODULE: on
run: |
go get .
gcloud components install app-engine-python app-engine-go cloud-datastore-emulator --quiet
- name: Test gomod
env:
GO111MODULE: on
run: |
go test -v -race google.golang.org/appengine/...
export APPENGINE_DEV_APPSERVER=$(which dev_appserver.py)
go test -v -cover -race google.golang.org/appengine/...
# TestAPICallAllocations doesn't run under race detector.
go test -v -cover google.golang.org/appengine/internal/... -run TestAPICallAllocations
test-gopath:
runs-on: ubuntu-latest
strategy:
matrix:
# GOPATH is deprecated in go 1.13.
go-version: [ '1.11.x', '1.12.x']

steps:
- name: Set up Go
uses: actions/setup-go@v2
with:
go-version: ${{ matrix.go-version }}
- name: Checkout
uses: actions/checkout@v2
- name: Cache go modules
uses: actions/cache@v2
with:
path: |
~/.cache/go-build
~/go/pkg/mod
key: ${{ runner.os }}-${{ matrix.go-version }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-${{ matrix.go-version }}-go-
- name: Set up Cloud SDK
uses: google-github-actions/setup-gcloud@master
- name: Install
env:
GO111MODULE: off
run: |
go get -u -v $(go list -f '{{join .Imports "\n"}}{{"\n"}}{{join .TestImports "\n"}}' ./... | sort | uniq | grep -v appengine)
go get -u google.golang.org/appengine
gcloud components install app-engine-python app-engine-go cloud-datastore-emulator --quiet
- name: Test gopath
run: |
go test -v -race google.golang.org/appengine/...
export APPENGINE_DEV_APPSERVER=$(which dev_appserver.py)
go test -v -cover -race google.golang.org/appengine/...
# TestAPICallAllocations doesn't run under race detector.
go test -v -cover google.golang.org/appengine/internal/... -run TestAPICallAllocations
6 changes: 2 additions & 4 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,12 @@

## Running system tests

Download and install the [Go App Engine SDK](https://cloud.google.com/appengine/docs/go/download). Make sure the `go_appengine` dir is in your `PATH`.

Set the `APPENGINE_DEV_APPSERVER` environment variable to `/path/to/go_appengine/dev_appserver.py`.

Run tests with `goapp test`:
Run tests with `go test`:

```
goapp test -v google.golang.org/appengine/...
go test -v google.golang.org/appengine/...
```

## Contributor License Agreements
Expand Down
6 changes: 2 additions & 4 deletions v2/CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,14 +19,12 @@

## Running system tests

Download and install the [Go App Engine SDK](https://cloud.google.com/appengine/docs/go/download). Make sure the `go_appengine` dir is in your `PATH`.

Set the `APPENGINE_DEV_APPSERVER` environment variable to `/path/to/go_appengine/dev_appserver.py`.

Run tests with `goapp test`:
Run tests with `go test`:

```
goapp test -v google.golang.org/appengine/...
go test -v google.golang.org/appengine/v2/...
```

## Contributor License Agreements
Expand Down
7 changes: 1 addition & 6 deletions v2/cmd/aefix/ae.go
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@ package main

import (
"go/ast"
"path"
"strconv"
"strings"
)
Expand All @@ -15,7 +14,6 @@ const (
ctxPackage = "golang.org/x/net/context"

newPackageBase = "google.golang.org/"
stutterPackage = false
)

func init() {
Expand All @@ -38,10 +36,7 @@ var logMethod = map[string]bool{

// mapPackage turns "appengine" into "google.golang.org/appengine/v2", etc.
func mapPackage(s string) string {
if stutterPackage {
s += "/" + path.Base(s)
}
return newPackageBase + s
return newPackageBase + strings.Replace(s, "appengine", "appengine/v2", 1)
}

func aeFn(f *ast.File) bool {
Expand Down
3 changes: 3 additions & 0 deletions v2/cmd/aefix/fix.go
Original file line number Diff line number Diff line change
Expand Up @@ -718,6 +718,9 @@ func usesImport(f *ast.File, path string) (used bool) {
case "<nil>":
// If the package name is not explicitly specified,
// make an educated guess. This is not guaranteed to be correct.
if strings.HasSuffix(path, "/v2") {
path = strings.TrimRight(path, "/v2")
}
lastSlash := strings.LastIndex(path, "/")
if lastSlash == -1 {
name = path
Expand Down

0 comments on commit cefb82f

Please sign in to comment.