Skip to content

hanf2x/apisix-build-tools

This branch is 3 commits ahead of, 68 commits behind api7/apisix-build-tools:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

bf4551e · Feb 20, 2023
Aug 31, 2022
Feb 6, 2023
Sep 14, 2022
Dec 30, 2020
Sep 14, 2022
Dec 16, 2021
Feb 20, 2023
Oct 25, 2021
Oct 29, 2021
May 24, 2019
Dec 15, 2021
Nov 3, 2021
Sep 29, 2021
Dec 23, 2022
Jul 21, 2022
Dec 16, 2021
Feb 20, 2023
Sep 29, 2021

Repository files navigation

Prerequisites

  • Docker
  • fpm
  • Make
  • rpm (if your host system is Ubuntu, should install rpmbuild by sudo apt-get install rpm)

Parameters

Parameter Required Description Example
type True it can be deb or rpm or apk type=rpm
app True it can be apisix, dashboard or apisix-base app=apisix
checkout True the code branch or tag of the app which you want to package checkout=2.1 or checkout=v2.1
version True the version of the package version=10.10
local_code_path False the path of local code diretory of apisix or dashboard, which depends on the app parameter local_code_path=/home/vagrant/apisix
openresty False the openresty type that apisix depends on, its value can be openresty or apisix-base, the default is openresty openresty=apisix-base
artifact False the final name of the generated artifact, if not specified, this will be the same as app artifact=apisixty
image_base False the environment for packaging, if type is rpm the default image_base is centos, if type is deb the default image_base is ubuntu image_base=centos
image_tag False the environment for packaging, it's value can be 16.04|18.04|20.04|6|7|8, if type is rpm the default image_tag is 7, if type is deb the default image_tag is 20.04 image_tag=7
buildx False if True, use buildx to build docker images, which may speed up GitHub Actions buildx=True

Example

Packaging a Centos 7 package of Apache APISIX

make package type=rpm app=apisix version=2.2 checkout=2.2 image_base=centos image_tag=7
ls output/
apisix-2.2-0.el7.x86_64.rpm

or just leave image_base and image_tag as the default values.

make package type=rpm app=apisix version=2.2 checkout=2.2
ls output/
apisix-2.2-0.el7.x86_64.rpm

Packaging a Centos 8 package of Apache APISIX

make package type=rpm app=apisix version=2.2 checkout=2.2 image_base=centos image_tag=8
ls output/
apisix-2.2-0.el8.x86_64.rpm

Packaging an Ubuntu 20.04 package of Apache APISIX

make package type=deb app=apisix version=2.2 checkout=2.2
ls output/
apisix_2.2-0~ubuntu20.04_amd64.deb

Packaging a Centos 7 package of Apache APISIX Dashboard

make package type=rpm app=dashboard version=2.4 checkout=v2.4 image_base=centos image_tag=7
ls output/
apisix-dashboard-2.4-0.el7.x86_64.rpm

Packaging an Ubuntu 20.04 package of Apache APISIX Dashboard

make package type=deb app=apisix version=2.2 checkout=2.2
ls output/
apisix-dashboard_2.2-0~ubuntu20.04_amd64.deb

Packaging a Centos 7 package of APISIX's OpenResty distribution

make package type=rpm app=apisix-base version=1.0.0 image_base=centos image_tag=7
ls output/
apisix-base-1.0.0-0.el7.x86_64.rpm

Packaging an Ubuntu 20.04 package of Apache APISIX's OpenResty distribution

make package type=deb app=apisix-base version=1.0.0
ls output/
apisix-base_1.0.0-0~ubuntu20.04_amd64.deb

Packaging an Alpine docker image of Apache APISIX's OpenResty distribution

make package version=1.19.3.2.1 image_base=alpine image_tag=3.12 app=apisix-base type=apk
docker images
REPOSITORY               TAG         
apache/apisix-base-apk   1.19.3.2.1   

Details

  • Makefile the entrance of the packager
  • dockerfiles directory for dockerfiles
  • output directory for packages

About

Build tools to package and release

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Shell 83.8%
  • Makefile 16.2%