aquasecurity / aquasecurity/tracee
Central container for building
- Dominant language
- Go
- Stars
- 4.6k
- Forks
- 507
- Avg merge
- 2d 8h
- Merged PRs (30d)
- 9
Description
#3389 introduced the use of a docker container to handle protobuf using (versioned) specific tools.
This container can be converted to a central image for the whole build process (from formatting to compiling) with versioned llvm, clang, clang-format, protoc etc.
- [ ] Implement a central script to call:
- [ ] check code
- [ ] format code
- [ ] build bins dev
- [ ] build bins release
- [ ] build protobuf (protoc)
- [ ] build k8s manifests
- [ ] build docs (man pages)
- [ ] build docs (mkdocs)
- [ ] Create two Dockerfile (alpine, ubuntu) with all tooling required for all options of the central script
- [ ] Update root Makefile to run the new cenral container in each respective rule (removing the specific ones)
- [ ] Update github workflows accordingly
Contributor guide
Research direction
Start by reviewing the Docker container introduced in #3389, then inspect the root Makefile and existing GitHub workflows. Define the central script, the Alpine and Ubuntu Dockerfiles, and the workflow and Makefile changes against the checklist. Done means all listed checks, formatting, builds, protobuf, Kubernetes manifest, and documentation targets run through the central container.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker, github-actions, go, kubernetes
- Domain
- build-system, ci-cd, devops, documentation
- Issue type
- Refactor
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100