Convert Makefile to magefile.go#4912
Conversation
|
This pull request does not have a backport label. Could you fix it @michel-laterman? 🙏
|
10f999f to
f4667d8
Compare
🎉 Snyk checks have passed. No issues have been found so far.✅ security/snyk check is complete. No issues have been found. (View Details) ✅ license/snyk check is complete. No issues have been found. (View Details) |
f1bf64d to
e841377
Compare
1e8020d to
7196699
Compare
|
I wasn't able to get some targets that use docker working locally, specifically:
I also did not have the time to verify EDIT: |
490eac3 to
81c0480
Compare
Re-implement all used targets in Makefile in mage. Move most utility scripts into magefile. Change buildkite to use mage.
|
This pull request is now in conflicts. Could you fix it @michel-laterman? 🙏 |
|
looks like some notice conflicts that needs to be solved. other than that looks good |
|
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # Dockerfile.build # Dockerfile.fips # Makefile # NOTICE.txt # README.md # dev-tools/go.mod # dev-tools/go.sum # docs/developers-guide.md # docs/docker-images.md
* Convert Makefile to magefile.go (#4912) Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # Dockerfile.build # Dockerfile.fips # Makefile # NOTICE.txt # README.md # dev-tools/go.mod # dev-tools/go.sum # docs/developers-guide.md # docs/docker-images.md * Clean up backport * Delete .terraform.lock.hcl * Fix check:ci * Fix imports --------- Co-authored-by: Michel Laterman <82832767+michel-laterman@users.noreply.github.com> Co-authored-by: michel-laterman <michel.laterman@elastic.co>
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/common.sh # .buildkite/scripts/local_build.sh # .buildkite/scripts/test-release.sh # Dockerfile.build # Dockerfile.fips # Makefile # NOTICE.txt # README.md # dev-tools/cloud/Makefile # dev-tools/cloud/terraform/main.tf # dev-tools/e2e/Dockerfile # dev-tools/e2e/build.sh # dev-tools/e2e/validatecerts.go # dev-tools/go.mod # dev-tools/go.sum # docs/developers-guide.md # docs/docker-images.md # docs/fips.md # testing/e2e/fips_test.go
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/common.sh # .buildkite/scripts/local_build.sh # .buildkite/scripts/test-release.sh # .buildkite/scripts/unit_test.sh # Dockerfile.fips # Makefile # NOTICE.txt # dev-tools/cloud/Makefile # dev-tools/cloud/terraform/main.tf # dev-tools/e2e/Dockerfile # dev-tools/e2e/build.sh # dev-tools/e2e/validatecerts.go # dev-tools/go.mod # dev-tools/go.sum # docs/fips.md # testing/e2e/fips_test.go
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/common.sh # .buildkite/scripts/local_build.sh # .buildkite/scripts/test-release.sh # Dockerfile.build # Dockerfile.fips # Makefile # NOTICE.txt # README.md # dev-tools/cloud/Makefile # dev-tools/cloud/terraform/main.tf # dev-tools/e2e/Dockerfile # dev-tools/e2e/build.sh # dev-tools/e2e/validatecerts.go # dev-tools/go.mod # dev-tools/go.sum # docs/developers-guide.md # docs/docker-images.md # docs/fips.md # testing/e2e/fips_test.go
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage.
Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage.
* Convert Makefile to magefile.go (#4912) Reimplement Makefile targets in mage. Change buildkite pipeline to use mage. Change Dockerfile* to use mage. (cherry picked from commit db5f46b) # Conflicts: # .buildkite/pipeline.yml # .buildkite/scripts/common.sh # .buildkite/scripts/local_build.sh # .buildkite/scripts/test-release.sh # Dockerfile.build # Dockerfile.fips # Makefile # NOTICE.txt # README.md # dev-tools/cloud/Makefile # dev-tools/cloud/terraform/main.tf # dev-tools/e2e/Dockerfile # dev-tools/e2e/build.sh # dev-tools/e2e/validatecerts.go # dev-tools/go.mod # dev-tools/go.sum # docs/developers-guide.md # docs/docker-images.md # docs/fips.md # testing/e2e/fips_test.go * Ensure directory is made within zip artifacts (#4985) * Ensure directory is made within zip artifacts * Make test:release extraction stricter * Fail cloude2e step if tests can't run, fix image publication (#5000) Fail the pipeline if cloude2e tests can't run. mage docker:image now uses the DOCKER_IMAGE env var. * Add multiplatform images (#5075) Fixes issue where change from make to mage, result in the loss of creating multiple platform images. * Fix cherry-picks * change to serialdeps * Use magefile from main * Remove FIPS references, use docker plugin * Use bk plugins * cleanup go.mod in dev-tools and pkg/api * Add missing EC secret to cloud e2e step * Review feedback





What is the problem this PR solves?
The Makefile has reached a point where it is becoming difficult to understand and add new features/targets.
How does this PR solve the problem?
Reimplement Makefile targets in mage.
Change buildkite pipeline to use mage.
Change
Dockerfile*to use mage.Added bonuses:
NOTICE-FIPS.txtHow to test this PR locally
mage -lSee doc strings for targets with
mage -h TARGETi.e.: