crowdsec rename the binary from crowdsec-firewall-bouncer to cs-firewall-bouncer the initd need the correct binary name to start the process the link for github source need also to be fixed (only the information one) fix the BuildDate updated copyright Signed-off-by: Kerma Gérald <gandalf@gk2.net>
112 lines
3.4 KiB
Makefile
112 lines
3.4 KiB
Makefile
# SPDX-License-Identifier: MIT
|
|
#
|
|
# Copyright (C) 2021-2022 Gerald Kerma <gandalf@gk2.net>
|
|
#
|
|
|
|
include $(TOPDIR)/rules.mk
|
|
|
|
PKG_NAME:=crowdsec-firewall-bouncer
|
|
PKG_VERSION:=0.0.21
|
|
PKG_RELEASE:=$(AUTORELEASE)
|
|
|
|
PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
|
|
PKG_SOURCE_URL:=https://codeload.github.com/crowdsecurity/cs-firewall-bouncer/tar.gz/v$(PKG_VERSION)?
|
|
PKG_HASH:=c92e02085c4c8481009a46ba80374329d102a45933fd0fd2164901954331923e
|
|
|
|
PKG_LICENSE:=MIT
|
|
PKG_LICENSE_FILES:=LICENSE
|
|
PKG_MAINTAINER:=Gerald Kerma <gandalf@gk2.net>
|
|
|
|
PKG_BUILD_DEPENDS:=golang/host
|
|
PKG_BUILD_PARALLEL:=1
|
|
PKG_USE_MIPS16:=0
|
|
PKG_BUILD_DIR:=$(BUILD_DIR)/cs-firewall-bouncer-$(PKG_VERSION)
|
|
|
|
CSFB_BUILD_VERSION?=v$(PKG_VERSION)
|
|
CSFB_BUILD_GOVERSION:=$(shell go version | cut -d " " -f3 | sed -E 's/[go]+//g')
|
|
CSFB_BUILD_TIMESTAMP:=$(shell date +%F"_"%T)
|
|
CSFB_BUILD_TAG:=openwrt-$(PKG_VERSION)-$(PKG_RELEASE)
|
|
CSFB_VERSION_PKG:=github.com/crowdsecurity/cs-firewall-bouncer/pkg/version
|
|
|
|
GO_PKG:=github.com/crowdsecurity/cs-firewall-bouncer
|
|
GO_PKG_INSTALL_ALL:=1
|
|
GO_PKG_LDFLAGS_X:=$(CSFB_VERSION_PKG).Version=$(CSFB_BUILD_VERSION) \
|
|
$(CSFB_VERSION_PKG).BuildDate=$(CSFB_BUILD_TIMESTAMP) \
|
|
$(CSFB_VERSION_PKG).Tag=$(CSFB_BUILD_TAG) \
|
|
$(CSFB_VERSION_PKG).GoVersion=$(CSFB_BUILD_GOVERSION)
|
|
|
|
include $(INCLUDE_DIR)/package.mk
|
|
include ../../lang/golang/golang-package.mk
|
|
|
|
define Package/crowdsec-firewall-bouncer/Default
|
|
SECTION:=net
|
|
CATEGORY:=Network
|
|
TITLE:=Firewall bouncer for Crowdsec
|
|
URL:=https://github.com/crowdsecurity/cs-firewall-bouncer/
|
|
endef
|
|
|
|
define Package/crowdsec-firewall-bouncer
|
|
$(call Package/crowdsec-firewall-bouncer/Default)
|
|
DEPENDS:=@(PACKAGE_iptables||PACKAGE_nftables) \
|
|
$(GO_ARCH_DEPENDS)
|
|
endef
|
|
|
|
define Package/golang-crowdsec-firewall-bouncer-dev
|
|
$(call Package/crowdsec-firewall-bouncer/Default)
|
|
$(call GoPackage/GoSubMenu)
|
|
TITLE+= (source files)
|
|
DEPENDS:=$(GO_ARCH_DEPENDS)
|
|
PKGARCH:=all
|
|
endef
|
|
|
|
define Package/crowdsec-firewall-bouncer/Default/description
|
|
Crowdsec bouncer written in golang for firewalls.
|
|
|
|
crowdsec-firewall-bouncer will fetch new and old decisions
|
|
from a CrowdSec API to add them in a blocklist used by supported firewalls.
|
|
|
|
You must install iptables+ipset or nftables.
|
|
endef
|
|
|
|
define Package/crowdsec-firewall-bouncer/description
|
|
$(call Package/crowdsec-firewall-bouncer/Default/description)
|
|
|
|
This package contains the main program.
|
|
endef
|
|
|
|
define Package/golang-crowdsec-firewall-bouncer-dev/description
|
|
$(call Package/crowdsec-firewall-bouncer/Default/description)
|
|
|
|
This package provides the source files for the program.
|
|
endef
|
|
|
|
define Package/crowdsec-firewall-bouncer/install
|
|
$(call GoPackage/Package/Install/Bin,$(1))
|
|
|
|
$(INSTALL_DIR) $(1)/etc/crowdsec/bouncers
|
|
$(INSTALL_DATA) \
|
|
$(GO_PKG_BUILD_DIR)/src/$(GO_PKG)/config/crowdsec-firewall-bouncer.yaml \
|
|
$(1)/etc/crowdsec/bouncers
|
|
|
|
$(INSTALL_DIR) $(1)/etc/init.d
|
|
$(INSTALL_BIN) \
|
|
./files/crowdsec-firewall-bouncer.initd \
|
|
$(1)/etc/init.d/crowdsec-firewall-bouncer
|
|
|
|
$(INSTALL_DIR) $(1)/etc
|
|
$(INSTALL_BIN) \
|
|
./files/crowdsec-firewall-bouncer.firewall \
|
|
$(1)/etc/firewall.cs
|
|
|
|
$(INSTALL_DIR) $(1)/etc/uci-defaults
|
|
$(INSTALL_BIN) \
|
|
./files/crowdsec-firewall-bouncer.defaults \
|
|
$(1)/etc/uci-defaults/99_crowdsec-firewall-bouncer
|
|
endef
|
|
|
|
define Package/crowdsec-firewall-bouncer/conffiles
|
|
/etc/crowdsec/bouncers/crowdsec-firewall-bouncer.yaml
|
|
endef
|
|
|
|
$(eval $(call GoBinPackage,crowdsec-firewall-bouncer))
|
|
$(eval $(call BuildPackage,crowdsec-firewall-bouncer))
|