Skip to content
This repository has been archived by the owner on Nov 2, 2021. It is now read-only.

Commit

Permalink
Add go 1.15 version to the action (#30)
Browse files Browse the repository at this point in the history
Signed-off-by: Cosmin Cojocar <[email protected]>
  • Loading branch information
Cosmin Cojocar authored Aug 22, 2020
1 parent 98739d9 commit b8d5fef
Show file tree
Hide file tree
Showing 4 changed files with 84 additions and 2 deletions.
2 changes: 1 addition & 1 deletion Dockerfile
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
FROM golang:1.14
FROM golang:1.15

LABEL name="Golang Action"
LABEL maintainer="Cedric Kring"
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -64,7 +64,7 @@ steps:
PROJECT_PATH: "./path/in/my/project"
```

To use a specific golang version (1.10, 1.11, 1.12, 1.13, 1.14), defaults to the latest version:
To use a specific golang version (1.10, 1.11, 1.12, 1.13, 1.14, 1.15), defaults to the latest version:
```yaml
steps:
- name: Use Go 1.11
Expand Down
22 changes: 22 additions & 0 deletions go1.15/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
FROM golang:1.15

LABEL name="Golang Action"
LABEL maintainer="Cedric Kring"
LABEL version="1.5.2"
LABEL repository="https://github.com/cedrickring/golang-action"

LABEL com.github.actions.name="Golang Action"
LABEL com.github.actions.description="Run Golang commands"
LABEL com.github.actions.icon="box"
LABEL com.github.actions.color="blue"

# Install dep and check sha256 checksum matches for version 0.5.4 https://github.com/golang/dep/releases/tag/v0.5.4
RUN set -eux; \
curl -L -s https://github.com/golang/dep/releases/download/v0.5.4/dep-linux-amd64 -o "$GOPATH/bin/dep"; \
echo "40a78c13753f482208d3f4bea51244ca60a914341050c588dad1f00b1acc116c $GOPATH/bin/dep" | sha256sum -c -; \
chmod +x "${GOPATH}/bin/dep";

COPY entrypoint.sh /entrypoint.sh

ENTRYPOINT ["/entrypoint.sh"]
CMD [""]
60 changes: 60 additions & 0 deletions go1.15/entrypoint.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
#!/bin/sh

set -e

if [ -z "${IMPORT}" ]; then
IMPORT="${GITHUB_REPOSITORY}"
fi
WORKDIR="${GOPATH}/src/github.com/${IMPORT}"

# PROJECT_PATH specifies the subdirectory in the working directory that the Go project is
if [ -z "${PROJECT_PATH}" ]; then
PROJECT_PATH="."
fi

# Go can only find dependencies if they're under $GOPATH/src.
# GitHub Actions mounts your repository outside of $GOPATH.
# So symlink the repository into $GOPATH, and then cd to it.
mkdir -p "$(dirname "${WORKDIR}")"
ln -s "${PWD}" "${WORKDIR}"
cd "${WORKDIR}/${PROJECT_PATH}"

# If a command was specified with `args="..."`, then run it. Otherwise,
# look for something useful to run.
if [ $# -eq 0 ] || [ "$*" = "" ]; then
if [ -r Makefile ]; then
make
else
if [ -r go.mod ]; then
export GO111MODULE=on
# Check if using vendored dependencies
if [ -d "vendor" ]; then
export GOFLAGS="-mod=vendor"
else
# Ensure no go.mod changes are made that weren't committed
export GOFLAGS="-mod=readonly"
fi
else
if [ -r Gopkg.toml ]; then
# Check if using vendored dependencies
if [ -d "vendor" ]; then
# Check that dep is in sync with /vendor dependencies and that running dep ensure doesn't result in modifications to Gopkg.lock/Gopkg.toml
"$GOPATH/bin/dep" ensure && "$GOPATH/bin/dep" check
git_workspace_status="$(git status --porcelain)"
if [ -n "${git_workspace_status}" ]; then
echo "Unexpected changes were found in dep /vendored. Please run $(dep ensure) and commit changes:";
echo "${git_workspace_status}";
exit 1;
fi
else
# Run dep ensure to download and sync dependencies
"$GOPATH/bin/dep" ensure
fi
fi
fi
go build ./...
go test ./...
fi
else
sh -c "$*"
fi

0 comments on commit b8d5fef

Please sign in to comment.