Merge pull request 'feat: update makefile' (#1) from neoloc/buildlist into master
Some checks failed
Deploy / build (push) Failing after 43s
Some checks failed
Deploy / build (push) Failing after 43s
Reviewed-on: https://git.query.consul/unkin/rpmbuilder/pulls/1
This commit is contained in:
commit
a1590b56ee
@ -21,10 +21,10 @@ jobs:
|
||||
- name: Checkout code
|
||||
uses: actions/checkout@v3
|
||||
|
||||
- name: Build Docker Image
|
||||
- name: Build Packages
|
||||
run: |
|
||||
make build
|
||||
make all
|
||||
|
||||
- name: Show tree
|
||||
- name: Show RPMs
|
||||
run: |
|
||||
tree /workspace
|
||||
find /workspace -type f -name "*.rpm"
|
||||
|
||||
@ -1,7 +1,9 @@
|
||||
name: Build
|
||||
name: Deploy
|
||||
|
||||
on:
|
||||
pull_request:
|
||||
push:
|
||||
branches:
|
||||
- master
|
||||
|
||||
jobs:
|
||||
build:
|
||||
@ -24,3 +26,11 @@ jobs:
|
||||
- name: Build Docker Image
|
||||
run: |
|
||||
make build
|
||||
|
||||
- name: Upload RPMs to Gitea
|
||||
env:
|
||||
DRONECI_PASSWORD: ${{ secrets.DRONECI_PASSWORD }}
|
||||
run: |
|
||||
for rpm in $(find /workspace -type f -name "*.rpm"); do
|
||||
curl --user droneci:${{ secrets.DRONECI_PASSWORD }} --upload-file $rpm https://git.query.consul/api/packages/unkin/rpm/almalinux/el8/upload
|
||||
done
|
||||
|
||||
9
Makefile
9
Makefile
@ -1,15 +1,17 @@
|
||||
# Variables
|
||||
ROOT_DIR := $(PWD)
|
||||
RPMS_DIR := $(ROOT_DIR)/rpms
|
||||
NFPM_VERSION := 2.41.1
|
||||
|
||||
# Automatically find all package/version directories
|
||||
PACKAGES := $(shell find $(RPMS_DIR) -mindepth 2 -maxdepth 2 -type d | sed "s|$(RPMS_DIR)/||")
|
||||
|
||||
# Default target to build all packages and versions
|
||||
.PHONY: all
|
||||
.PHONY: all list build buildall clean
|
||||
all: $(PACKAGES)
|
||||
|
||||
list:
|
||||
@echo "$(PACKAGES)"
|
||||
|
||||
# Build specific package/version
|
||||
.PHONY: $(PACKAGES)
|
||||
$(PACKAGES):
|
||||
@ -19,7 +21,6 @@ $(PACKAGES):
|
||||
$(MAKE) build PACKAGE_NAME=$$PACKAGE_NAME PACKAGE_VERSION=$$PACKAGE_VERSION
|
||||
|
||||
# Build target
|
||||
.PHONY: build
|
||||
build:
|
||||
@mkdir -p $(ROOT_DIR)/dist/$(PACKAGE_NAME)/
|
||||
@echo "Preparing to build $(PACKAGE_NAME) version $(PACKAGE_VERSION)"
|
||||
@ -27,7 +28,6 @@ build:
|
||||
export PACKAGE_RELEASE=$$(cat $(PACKAGE_VERSION)/release) && \
|
||||
echo "Using PACKAGE_RELEASE=$${PACKAGE_RELEASE}" && \
|
||||
docker build \
|
||||
--build-arg NFPM_VERSION=$(NFPM_VERSION) \
|
||||
--build-arg PACKAGE_VERSION=$(PACKAGE_VERSION) \
|
||||
--build-arg PACKAGE_RELEASE=$${PACKAGE_RELEASE} \
|
||||
-t $$(echo $(PACKAGE_NAME)-builder \
|
||||
@ -39,7 +39,6 @@ build:
|
||||
docker rm $(PACKAGE_NAME)-$(PACKAGE_VERSION)-builder
|
||||
|
||||
# Clean target
|
||||
.PHONY: clean
|
||||
clean:
|
||||
@echo "Cleaning build artifacts..."
|
||||
rm -rf $(ROOT_DIR)/dist
|
||||
|
||||
@ -1 +0,0 @@
|
||||
almalinux/el8
|
||||
1
rpms/terragrunt/0.69.0/release
Normal file
1
rpms/terragrunt/0.69.0/release
Normal file
@ -0,0 +1 @@
|
||||
1
|
||||
@ -1,5 +1,5 @@
|
||||
# Start with the AlmaLinux 8.10 base image
|
||||
FROM git.query.consul/unkin/almalinux8:latest
|
||||
FROM git.query.consul/unkin/almalinux8-buildagent:latest
|
||||
|
||||
# Create output directory for RPMs
|
||||
RUN mkdir -p /app/dist
|
||||
@ -11,19 +11,6 @@ ARG PACKAGE_RELEASE
|
||||
ENV PACKAGE_RELEASE=${PACKAGE_RELEASE}
|
||||
ARG PACKAGE_VERSION
|
||||
ENV PACKAGE_VERSION=${PACKAGE_VERSION}
|
||||
ARG NFPM_VERSION
|
||||
ENV NFPM_VERSION=${NFPM_VERSION}
|
||||
|
||||
# Clean and update the repository cache
|
||||
RUN dnf clean all && \
|
||||
dnf makecache
|
||||
|
||||
# Install build tools and dependencies for building RPMs
|
||||
RUN dnf groupinstall -y 'Development Tools' && \
|
||||
dnf install -y make cmake gcc gcc-c++ rpm rpmdevtools wget tar gzip
|
||||
|
||||
# Install nfpm using the RPM package
|
||||
RUN dnf install -y https://github.com/goreleaser/nfpm/releases/download/v${NFPM_VERSION}/nfpm-${NFPM_VERSION}-1.x86_64.rpm
|
||||
|
||||
# Copy nfpm.yaml from the context into the container
|
||||
COPY nfpm.yaml /app/nfpm.yaml
|
||||
|
||||
Loading…
Reference in New Issue
Block a user