Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Refactor project build process #280

Merged
merged 1 commit into from
Mar 6, 2023
Merged

Refactor project build process #280

merged 1 commit into from
Mar 6, 2023

Conversation

atc0005
Copy link
Owner

@atc0005 atc0005 commented Mar 6, 2023

Changes

  • Switch to semantic versioning (semver) compatible versioning pattern
    • filenames (where applicable)
    • embedded version metadata
  • Generate RPM/DEB packages using nFPM
    • "stable" release packages
    • "dev" release packages
      • provides binaries with _dev suffix in order to more easily test the impact of new releases
  • Add version metadata to Windows executables
    • Use github.com/tc-hib/go-winres and winres.json file to apply version details to Windows executables provided by this project
  • Makefile: Compress binaries and use fixed filenames
  • Makefile: Refresh recipes to add "standard" set, new package-related options
  • Build dev/stable releases using go-ci Docker image
  • Add Dockerfile to provide "builder" image for Makefile-driven release builds
  • Update Dependabot configuration to add update monitoring for go-ci-oldstable-build image
  • Add Docker-based build recipes to Makefile
    • docker-release-build
    • docker-dev-build
    • docker-packages
  • Update README
    • note decompression step needed after downloading individual binaries or building via some Makefile recipes
    • note DEB and RPM packages as alternatives to downloading individual binaries

References

- Switch to semantic versioning (semver) compatible versioning pattern
  - filenames (where applicable)
  - embedded version metadata
- Generate RPM/DEB packages using nFPM
  - "stable" release packages
  - "dev" release packages
    - provides binaries with `_dev` suffix in order to more easily
      test the impact of new releases
- Add version metadata to Windows executables
  - Use `github.com/tc-hib/go-winres` and `winres.json` file to apply
    version details to Windows executables provided by this project
- Makefile: Compress binaries and use fixed filenames
- Makefile: Refresh recipes to add "standard" set, new package-related
  options
- Build dev/stable releases using go-ci Docker image
- Add Dockerfile to provide "builder" image for Makefile-driven
  release builds
- Update Dependabot configuration to add update monitoring for
  `go-ci-oldstable-build` image
- Add Docker-based build recipes to Makefile
  - `docker-release-build`
  - `docker-dev-build`
  - `docker-packages`
- Update README
  - note decompression step needed after downloading individual
    binaries or building via some Makefile recipes
  - note DEB and RPM packages as alternatives to downloading
    individual binaries

refs GH-272
refs GH-273
refs GH-274
refs GH-275
refs GH-276
refs GH-277
@atc0005 atc0005 added enhancement New feature or request builds dependencies config packages Related to generated packages for this project (e.g., RPM, DEB) labels Mar 6, 2023
@atc0005 atc0005 added this to the v0.11.0 milestone Mar 6, 2023
@atc0005 atc0005 self-assigned this Mar 6, 2023
@atc0005 atc0005 merged commit b66dff9 into master Mar 6, 2023
@atc0005 atc0005 deleted the refactor-builds branch March 6, 2023 11:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment