Skip to content

Commit

Permalink
Refactor project build process
Browse files Browse the repository at this point in the history
- 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
  - NOTE: Even though this project does not yet provide tools usable
    on non-Windows systems the plan is to do so; we stub out future
    package support in anticipation of adding Linux support "soon"
- 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
  - update `.gitignore` to exclude Windows syso files
    - these files are produced when running go generate as part of the
      build process and should not be retained in version control
- 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

refs GH-94
refs GH-95
refs GH-96
refs GH-97
refs GH-98
refs GH-99
  • Loading branch information
atc0005 committed Mar 9, 2023
1 parent 6b63dc9 commit 7f69522
Show file tree
Hide file tree
Showing 13 changed files with 1,021 additions and 93 deletions.
19 changes: 19 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
Expand Up @@ -83,3 +83,22 @@ updates:
# Go release and no longer supported Go versions.
- ">= 1.20"
- "< 1.19"

# Monitor image used to build dev & stable project releases
- package-ecosystem: docker
directory: "/dependabot/docker/builds"
open-pull-requests-limit: 10
target-branch: "master"
schedule:
interval: "daily"
time: "02:00"
timezone: "America/Chicago"
assignees:
- "atc0005"
labels:
- "dependencies"
- "builds"
allow:
- dependency-type: "all"
commit-message:
prefix: "docker"
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -29,3 +29,6 @@ scratch/

# Ignore assets generated by Makefile
/release_assets

# Ignore go generate produced Windows executable resource files
*.syso
Loading

0 comments on commit 7f69522

Please sign in to comment.