- Add support for `linux/arm64` platform in Docker workflow
- Enable build cache from and to registry in Docker workflow
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Update golangci-lint-action from v3 to v6 in testing workflow
- Remove specific version (v1.56.2) for golangci-lint-action in testing workflow
- Add changelog format specification in .goreleaser.yaml
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Remove the `project_name` field
- Change changelog source from `git` to `gitea`
- Add new changelog categories for refactor, build process updates, and documentation updates
- Remove the changelog order and filters configuration
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new 'testing' job to the Gitea workflow with steps for checkout, setup Go, caching, building, and testing
- Include 'bin' directory in the .gitignore file
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new Makefile with build, docker-build, test, and clean targets, including cross-compilation support for Linux AMD64 and ARM64.
- Introduce a new Go executable `example-go` with a basic HTTP server setup.
- Create a new Dockerfile for an Alpine-based container including the `example-go` binary, with metadata labels and an entrypoint.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Introduce Go setup and caching in Docker GitHub Actions workflow
- Add `release` directory to `.gitignore`
- Remove `main.go` file from the repository
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new GitHub Actions workflow for Docker image creation and push
- Trigger the workflow on push to main branch and tags starting with 'v'
- Trigger the workflow on pull requests to the main branch
- Define environment variable `BUILDKIT_NO_CLIENT_TOKEN`
- Set up the workflow to run on `ubuntu-latest` with a specific container image
- Include steps for checking out the code, setting up QEMU, and Docker Buildx
- Configure Docker Buildx with debug mode and insecure entitlements
- Add steps to log in to Docker Hub using secrets for username and password
- Generate Docker image tags based on semantic versioning and push conditionally on event type
- Build and push Docker image specifying the platform, Dockerfile location, and tag and label metadata
- Disable provenance and SBOM (Software Bill of Materials) generation in the build-push action
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Correct the `go-version-file` syntax by removing quotes in the testing workflow
- Add `check-latest` flag to ensure the latest Go version is used in testing workflow
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Use `go.mod` to determine Go version in Gitea release workflow
- Ensure the latest Go version is used in Gitea release workflow
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Rename GitHub Actions workflow file from `test.yml` to `testing.yml`
- Change workflow job name from `checks` to `testing`
- Update GitHub Actions `checkout` to version 4
- Remove specific Go version in favor of determining it from `go.mod`
- Update GitHub Actions `setup-go` to version 5
- Update GitHub Actions `cache` to version 4
- Add `golangci-lint` action with specified version and timeout arguments
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new GitHub Actions workflow for releases that triggers on any tag push, sets up Go environment, caches dependencies, and runs GoReleaser with Gitea token.
- Create a new GoReleaser configuration file that skips the build process, enables changelog generation with sorting, groups commits into categories for changelog, and excludes certain commit messages from the changelog.
- Define Gitea API and download URLs in the GoReleaser configuration.
Signed-off-by: Bo-Yi Wu <appleboy.tw@gmail.com>
- Add a new file `.gitea/workflows/test.yml`
- Set up a workflow named `checks`
- Trigger the workflow on `push` and `pull_request`
- Set environment variables `GOPATH` and `GOCACHE`
- Define a job named `lint` that runs on `ubuntu-latest`
- Add steps to the `lint` job, including checking out the code, setting up Go, and caching Go dependencies
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Change the module name from "example" to "gitea.com/action-examples/go" in go.mod
- Update the import path from "example/router" to "gitea.com/action-examples/go/router" in main.go
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Update the Go version from `1.21.2` to `1.21`
- Add `github.com/stretchr/testify` as a required dependency
- Add `github.com/davecgh/go-spew` as an indirect dependency
- Add `github.com/pmezard/go-difflib` as an indirect dependency
- Add a new test file `router/router_test.go`
- Implement a test for the `PingRoute` function in `router/router_test.go`
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Remove the import statement for "github.com/gin-gonic/gin" in main.go
- Add a new file called router.go in the router directory
- Create a new function called New() in router.go that returns a *gin.Engine
- Add a GET route for "/ping" in the New() function in router.go
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Add a new file `go.mod` with the content of a Go module
- Specify the module name as `example`
- Specify the Go version as `1.21.2`
- Add a requirement for the package `github.com/gin-gonic/gin` with version `v1.9.1`
- Add multiple indirect requirements for various packages
- Add a new file `main.go` with a basic Go program using the `gin-gonic/gin` package to create an HTTP server
Signed-off-by: appleboy <appleboy.tw@gmail.com>
- Update the description of the README.md file
- Add information about Gitea Actions as a built-in CI/CD solution
Signed-off-by: appleboy <appleboy.tw@gmail.com>