concurrency:
# yamllint disable-line rule:line-length
- group: compose-maven-verify-${{ github.workflow }}-${{ github.event.inputs.GERRIT_CHANGE_ID || github.run_id }}
+ group: compose-make-verify-${{ github.workflow }}-${{ github.event.inputs.GERRIT_CHANGE_ID || github.run_id }}
cancel-in-progress: true
jobs:
needs: [prepare, sanitize]
# use compose-jjb-verify from the v0.4 series of releng-reusable-workflows
# yamllint disable-line rule:line-length
- uses: ravipendurty/releng-reusable-workflows/.github/workflows/compose-maven-verify.yaml@main
+ uses: ravipendurty/releng-reusable-workflows/.github/workflows/compose-make-verify.yaml@main
with:
GERRIT_BRANCH: ${{ inputs.GERRIT_BRANCH }}
GERRIT_CHANGE_ID: ${{ inputs.GERRIT_CHANGE_ID }}
GERRIT_REFSPEC: ${{ inputs.GERRIT_REFSPEC }}
JDK_VERSION: "21"
MVN_VERSION: "3.9.6"
- MVN_PROFILES: "docker"
- MVN_PHASES: "clean install"
- MVN_PARAMS: "-s settings.xml"
- # yamllint disable rule:line-length
- MVN_OPTS: >-
- -Dorg.slf4j.simpleLogger.log.org.apache.maven.cli.transfer.Slf4jMavenTransferListener=warn
- -Dmaven.repo.local=/tmp/r -Dorg.ops4j.pax.url.mvn.localRepository=/tmp/r
- -DaltDeploymentRepository=staging::default::file:"${GITHUB_WORKSPACE}"/m2repo
# yamllint enable rule:line-length
ENV_VARS: ${{ toJSON(vars) }}
gerrit-change-number: ${{ inputs.GERRIT_CHANGE_NUMBER }}
gerrit-patchset-number: ${{ inputs.GERRIT_PATCHSET_NUMBER }}
vote-type: ${{ env.WORKFLOW_CONCLUSION }}
- comment-only: true
\ No newline at end of file
+ comment-only: true
# See the License for the specific language governing permissions and
# limitations under the License.
-# -------------------------------------------------------------------------
-# Variables
-# -------------------------------------------------------------------------
-ACTIVATE = . .venv/bin/activate
-
-# -------------------------------------------------------------------------
-# Phony targets
-# -------------------------------------------------------------------------
-.PHONY: system-check docs hello help
-
-# -------------------------------------------------------------------------
-# [Install & Setup]
-# -------------------------------------------------------------------------
-
-install: install-pip system-check ## [Install] Install necessary tools
-
-venv: ## [Install] Set up Python virtual environment
- @echo "## Creating Python virtual environment..."
- python3 -m venv .venv
-
-install-pip: ## [Install] Install Python dependencies
- @echo "## Installing Python dependencies..."
- $(ACTIVATE) && pip install -r docs/requirements-docs.txt
-
-docs: ## [Docs] Shows the docker status
- @echo "Gererate READ_THE_DOCS output"
- tox -e docs,docs-linkcheck
-
-
-# -------------------------------------------------------------------------
-# [System]
-# -------------------------------------------------------------------------
-
-docker-status: ## [System] Shows the docker status
- @docker ps -a --format "table {{.Names}}\t{{.Image}}\t{{.Status}}"
-
-system-check: hello ## [System] System overview
- @echo "## System Overview:"
- @df -hT
- @free -h
- @grep -c ^processor /proc/cpuinfo
- @cat /etc/os-release | grep -i pretty
- @docker version
- @docker compose version
- @git --version
- @python3 --version
- @go version
- @timedatectl
- @echo "Host: ${HOSTNAME}"
-
-# -------------------------------------------------------------------------
-# [Help]
-# -------------------------------------------------------------------------
-
-TEXT_FILE := banner.txt
-hello: ## [Help] Displays a banner
- @echo "Reading lines from $(TEXT_FILE):"
- @while IFS= read -r line; do \
- echo "$$line"; \
- done < $(TEXT_FILE)
-
-help: hello ## [Help] Show this help
- @echo ""
- @echo "Available Make targets:"
- @awk 'BEGIN {FS = ":.*?## "}; /^[a-zA-Z_-]+:.*?## / { \
- split($$2, parts, "] "); \
- group = substr(parts[1], 2); \
- desc = parts[2]; \
- if (group != last_group) { \
- printf "\n\033[1m[%s]\033[0m\n", group; \
- last_group = group; \
- } \
- printf " \033[36m%-25s\033[0m %s\n", $$1, desc \
- }' $(MAKEFILE_LIST)
+## help: Show the help.
+.PHONY: help
+help:
+ @echo "Usage: make <target>"
@echo ""
+ @echo "Targets:"
+ @fgrep "##" Makefile | fgrep -v fgrep | sed 's/##/ -/g'
+
+
+## feature: Build all features
+.PHONY: feature
+feature:
+ mvn clean install -f parents/pom.xml
+ mvn clean install -f features/sdnr/wt/pom.xml
+ mvn clean install -f features/sdnr/odlux/pom.xml
+
+## dist: Build images
+.PHONY: dist
+dist:
+ mvn clean install -f distribution/oam-controller/pom.xml
+ mvn clean install -f distribution/oam-controller-web/pom.xml
+
+## all: Build features and images
+.PHONY: all
+all: feature dist
\ No newline at end of file