From 4f5412e40d4cd1a5b0f954cb7c40104157e63d2a Mon Sep 17 00:00:00 2001 From: Sean Marciniak <30928402+MovieStoreGuy@users.noreply.github.com> Date: Fri, 20 Jan 2023 05:58:45 +1100 Subject: [PATCH] [chore] Simplify contribution / Usage (#6975) Looking to reduce contribution toil and reducing onboarding efforts, this removes any additional once of steps that could cause issues with tooling versioning mismatches. --- .github/workflows/api-compatibility.yml | 5 ----- .github/workflows/build-and-test.yml | 3 --- CONTRIBUTING.md | 4 ---- Makefile | 12 ++++++------ Makefile.Common | 1 + internal/buildscripts/compare-apidiff.sh | 4 ++-- internal/buildscripts/gen-apidiff.sh | 3 ++- 7 files changed, 11 insertions(+), 21 deletions(-) diff --git a/.github/workflows/api-compatibility.yml b/.github/workflows/api-compatibility.yml index 1563a6e99fe..2e10f896f1a 100644 --- a/.github/workflows/api-compatibility.yml +++ b/.github/workflows/api-compatibility.yml @@ -32,11 +32,6 @@ jobs: uses: actions/setup-go@v3 with: go-version: 1.19 - - - name: Install-Tools - run: | - cd ${{ github.base_ref }} - make install-tools # Generate apidiff states of Main - name: Generate-States diff --git a/.github/workflows/build-and-test.yml b/.github/workflows/build-and-test.yml index ce066ef6667..7c38e7c555c 100644 --- a/.github/workflows/build-and-test.yml +++ b/.github/workflows/build-and-test.yml @@ -31,9 +31,6 @@ jobs: - name: Install dependencies if: steps.go-cache.outputs.cache-hit != 'true' run: make gomoddownload - - name: Install Tools - if: steps.go-cache.outputs.cache-hit != 'true' - run: make install-tools lint: runs-on: ubuntu-latest diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 17b6a42188f..ae106ac573b 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -168,13 +168,9 @@ $ git remote add fork git@github.com:YOUR_GITHUB_USERNAME/opentelemetry-collecto Run tests, fmt and lint: ```shell -$ make install-tools # Only first time. $ make ``` -*Note:* the default build target requires tools that are installed at `$(go env -GOPATH)/bin`, ensure that `$(go env GOPATH)/bin` is included in your `PATH`. - ## Creating a PR Checkout a new branch, make modifications, build locally, and push the branch to your fork diff --git a/Makefile b/Makefile index 8dfd4d15945..6042470f1f6 100644 --- a/Makefile +++ b/Makefile @@ -59,7 +59,7 @@ gobenchmark: @$(MAKE) for-all-target TARGET="benchmark" .PHONY: gotest-with-cover -gotest-with-cover: +gotest-with-cover: $(GOCOVMERGE) @$(MAKE) for-all-target TARGET="test-with-cover" $(GOCOVMERGE) $$(find . -name coverage.out) > coverage.txt @@ -339,7 +339,7 @@ checkdoc: # Construct new API state snapshots .PHONY: apidiff-build -apidiff-build: +apidiff-build: $(APIDIFF) @$(foreach pkg,$(ALL_PKGS),$(call exec-command,./internal/buildscripts/gen-apidiff.sh -p $(pkg))) # If we are running in CI, change input directory @@ -351,7 +351,7 @@ endif # Compare API state snapshots .PHONY: apidiff-compare -apidiff-compare: +apidiff-compare: $(APIDIFF) @$(foreach pkg,$(ALL_PKGS),$(call exec-command,./internal/buildscripts/compare-apidiff.sh -p $(pkg))) .PHONY: multimod-verify @@ -368,9 +368,9 @@ multimod-prerelease: $(MULTIMOD) COMMIT?=HEAD REMOTE?=git@github.com:open-telemetry/opentelemetry-collector.git .PHONY: push-tags -push-tags: - multimod verify - set -e; for tag in `multimod tag -m ${MODSET} -c ${COMMIT} --print-tags | grep -v "Using" `; do \ +push-tags: $(MULTIMOD) + $(MULTIMOD) verify + set -e; for tag in `$(MULTIMOD) tag -m ${MODSET} -c ${COMMIT} --print-tags | grep -v "Using" `; do \ echo "pushing tag $${tag}"; \ git push ${REMOTE} $${tag}; \ done; diff --git a/Makefile.Common b/Makefile.Common index 8811b54e530..348ce2af659 100644 --- a/Makefile.Common +++ b/Makefile.Common @@ -33,6 +33,7 @@ GOIMPORTS := $(TOOLS_BIN_DIR)/goimports MULTIMOD := $(TOOLS_BIN_DIR)/multimod CROSSLINK := $(TOOLS_BIN_DIR)/crosslink CHLOG := $(TOOLS_BIN_DIR)/chloggen +APIDIFF := $(TOOLS_BIN_DIR)/apidiff GH := $(shell which gh) diff --git a/internal/buildscripts/compare-apidiff.sh b/internal/buildscripts/compare-apidiff.sh index c60098fb4bf..710c8434ea7 100755 --- a/internal/buildscripts/compare-apidiff.sh +++ b/internal/buildscripts/compare-apidiff.sh @@ -14,7 +14,7 @@ usage() { package="" input_dir="./internal/data/apidiff" check_only=false - +apidiff_cmd="$(dirname $(realpath ${BASH_SOURCE:-$0}))/../../.tools/apidiff" while getopts "cp:d:" o; do case "${o}" in @@ -41,7 +41,7 @@ fi set -e if [ -e $input_dir/$package/apidiff.state ]; then - changes=$(apidiff $input_dir/$package/apidiff.state $package) + changes=$(${apidiff_cmd} $input_dir/$package/apidiff.state $package) if [ ! -z "$changes" -a "$changes"!=" " ]; then SUB='Incompatible changes:' if [ $check_only = true ] && [[ "$changes" =~ .*"$SUB".* ]]; then diff --git a/internal/buildscripts/gen-apidiff.sh b/internal/buildscripts/gen-apidiff.sh index 5726d471997..377c5b08a8c 100755 --- a/internal/buildscripts/gen-apidiff.sh +++ b/internal/buildscripts/gen-apidiff.sh @@ -14,6 +14,7 @@ usage() { dry_run=false package="" output_dir="./internal/data/apidiff" +apidiff_cmd="$(dirname $(realpath ${BASH_SOURCE:-$0}))/../../.tools/apidiff" while getopts "dp:o:" o; do @@ -55,7 +56,7 @@ trap clean_up EXIT mkdir -p $tmp_dir/$package -apidiff -w $tmp_dir/$package/apidiff.state $package +${apidiff_cmd} -w $tmp_dir/$package/apidiff.state $package # Copy files if not in dry-run mode. if [ $dry_run = false ]; then