Compare commits
	
		
			32 Commits
		
	
	
		
			fix_packs
			...
			test-scrip
		
	
	| Author | SHA1 | Date | |
|---|---|---|---|
| e659731d7b | |||
| 8c81cfecf0 | |||
| bf4dedb221 | |||
| fc2a686fc1 | |||
| fccd2998fe | |||
| bc457107f1 | |||
| 81d5297c7c | |||
|  | ebfa49dd1d | ||
|  | d609016659 | ||
|  | a3de7f8261 | ||
|  | 0a105aace4 | ||
|  | 2db6b03aa8 | ||
|  | 3cf886ca28 | ||
|  | fb6bde6ec4 | ||
|  | 14d59e886f | ||
| 6302f3c4ef | |||
|  | 7df06eebcb | ||
|  | e52c1c1420 | ||
|  | 56f573bfa9 | ||
|  | e03773565e | ||
|  | c329b429dd | ||
|  | daf6389f52 | ||
|  | 6fdb4dec78 | ||
|  | 586fe0210e | ||
|  | 129859feec | ||
|  | 34540c6250 | ||
|  | b40b8691ad | ||
| 6cbde103dd | |||
|  | 14c787b0db | ||
|  | d161930947 | ||
| 0c426721dd | |||
| 0d08c6f88f | 
							
								
								
									
										74
									
								
								.gitea/workflows/k8s_buildscript.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										74
									
								
								.gitea/workflows/k8s_buildscript.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,74 @@ | ||||
| #!/usr/bin/env python3 | ||||
|  | ||||
| import argparse | ||||
| import json | ||||
| import subprocess | ||||
|  | ||||
| vers_path = ".gitea/workflows/k8s_vers.json" | ||||
|  | ||||
| def run(args): | ||||
|     result = subprocess.run( | ||||
|         args, | ||||
|         capture_output = True, | ||||
|         text = True | ||||
|     ) | ||||
|     if result.stderr is not None: | ||||
|         print(result.stderr) | ||||
|         return False | ||||
|     print(result.stdout) | ||||
|     return True | ||||
|  | ||||
| def parse_args() -> argparse.Namespace: | ||||
|     parser = argparse.ArgumentParser( | ||||
|         formatter_class=argparse.ArgumentDefaultsHelpFormatter, | ||||
|     ) | ||||
|     parser.add_argument( | ||||
|         "--branch", | ||||
|         help="used to pick the appropriate VM template to clone", | ||||
|         choices=["sisyphus", "c10f2", "p10", "p11"], | ||||
|         ) | ||||
|     parser.add_argument( | ||||
|         "--other-build-args", | ||||
|         help="other build arg as a string", | ||||
|         ) | ||||
|     parser.add_argument( | ||||
|         "--workspace", | ||||
|         help="workspace, path to builing script", | ||||
|         ) | ||||
|     return parser.parse_args() | ||||
|  | ||||
| def main() -> None: | ||||
|     args = parse_args() | ||||
|     if args.branch is None or args.branch == "": | ||||
|         raise RuntimeError("Empty branch setting. Check your choise --branch.") | ||||
|  | ||||
|     data = {} | ||||
|     with open(f"{args.workspace}/{vers_path}", "r") as f: | ||||
|         data = json.load(f) | ||||
|  | ||||
|     i = 0 | ||||
|     for br in data.get("branches"): | ||||
|         if br.get("name") == args.branch: | ||||
|             break | ||||
|         i += 1 | ||||
|  | ||||
|     vers_branch = data.get("branches")[i].get("versions") | ||||
|     if vers_branch == None : | ||||
|         raise RuntimeError(f"Unknown branch: {args.branch!r}. In {vers_path} no k8s-versions list.") | ||||
|  | ||||
|     images_to_rebuild="k8s/kube-apiserver k8s/kube-scheduler k8s/kube-controller-manager k8s/kube-proxy k8s/kubelet k8s/coredns k8s/etcd" | ||||
|     for ver in vers_branch: | ||||
|         kube_ver = ver.get("kube-version") | ||||
|         dns_ver = ver.get("coredns") | ||||
|         if kube_ver != None and dns_ver != None: | ||||
|             packs_string=f"-b {args.branch} " + "--package-versions '{\"k8s/kube-apiserver\":" + f"\"{kube_ver}\",\"k8s/kube-scheduler\":\"{kube_ver}\",\"k8s/kube-controller-manager\":\"{kube_ver}\",\"k8s/kube-proxy\":\"{kube_ver}\",\"k8s/kubelet\":\"{kube_ver}\",\"k8s/coredns\":\"{dns_ver}\",\"k8s/etcd\":\"{kube_ver}\"" + "}'" | ||||
|             if ver.get("latest") != None and ver.get("latest"): | ||||
|                 packs_string=f"-o k8s --latest {args.branch} "+packs_string | ||||
|             else: | ||||
|                 packs_string=f"-i {images_to_rebuild} "+packs_string | ||||
|  | ||||
|             subprocess.run(f"{args.workspace}/build.py {args.other_build_args} {packs_string}", shell=True) | ||||
|             subprocess.run("podman rmi -f --all", shell=True) | ||||
|  | ||||
| if __name__ == "__main__": | ||||
|     main() | ||||
							
								
								
									
										72
									
								
								.gitea/workflows/k8s_vers.json
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										72
									
								
								.gitea/workflows/k8s_vers.json
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,72 @@ | ||||
| { | ||||
|   "branches": [ | ||||
|     { | ||||
|       "name": "p10", | ||||
|       "versions": [ | ||||
|         { | ||||
|           "kube-version": "1.27", | ||||
|           "coredns": "1.10.1" | ||||
|         }, | ||||
|         { | ||||
|           "kube-version": "1.28", | ||||
|           "coredns": "1.10.1", | ||||
|           "latest": true | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       "name": "p11", | ||||
|       "versions": [ | ||||
|         { | ||||
|           "kube-version": "1.31", | ||||
|           "coredns": "1.11.3" | ||||
| 	}, | ||||
|         { | ||||
|           "kube-version": "1.32", | ||||
|           "coredns": "1.11.3" | ||||
| 	}, | ||||
| 	{ | ||||
| 	  "kube-version": "1.33", | ||||
|           "coredns": "1.33", | ||||
|           "latest": true | ||||
| 	} | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|     	"name": "c10f2", | ||||
| 	"versions": [ | ||||
| 	{ | ||||
|           "kube-version": "1.31", | ||||
|           "coredns": "1.11.3"         | ||||
| 	}, | ||||
| 	{ | ||||
|           "kube-version": "1.32", | ||||
|           "coredns": "1.11.3" | ||||
| 	}, | ||||
| 	{ | ||||
|           "kube-version": "1.33", | ||||
|           "coredns": "1.33", | ||||
|           "latest": true | ||||
|         } | ||||
|       ] | ||||
|     }, | ||||
|     { | ||||
|       "name": "sisyphus", | ||||
|       "versions": [ | ||||
| 	{ | ||||
|           "kube-version": "1.31", | ||||
|           "coredns": "1.11.3" | ||||
|         }, | ||||
|         { | ||||
|           "kube-version": "1.32", | ||||
|           "coredns": "1.11.3" | ||||
| 	}, | ||||
| 	{ | ||||
|           "kube-version": "1.33", | ||||
|           "coredns": "1.33", | ||||
|           "latest": true | ||||
|         } | ||||
|       ] | ||||
|     } | ||||
|   ] | ||||
| } | ||||
| @@ -32,20 +32,20 @@ do | ||||
|   if [ -n "$test" ]; then | ||||
|     command="podman run --rm --entrypoint=\"$entrypoint\" $url/$imgpath -c \"$test\"" | ||||
|   else | ||||
|     if [[ "$IM" == distroless-toybox ]]; then | ||||
|       command="podman run --rm $url/$imgpath toysh -c true" | ||||
|     if [ "$IM" = distroless-toybox ]; then | ||||
|       command="podman run -q --rm $url/$imgpath toysh -c true" | ||||
|     fi | ||||
|     if [ "$IM" = distroless-true ]; then | ||||
|       command="podman run --rm $url/$imgpath \"true\"" | ||||
|       command="podman run -q --rm $url/$imgpath \"true\"" | ||||
|     fi | ||||
|     if [ "$IM" = distroless-gotop ]; then  | ||||
|       command="podman run --rm $url/$imgpath \"--version\"" | ||||
|       command="podman run -q --rm $url/$imgpath \"--version\"" | ||||
|     fi  | ||||
|     if [ "$IM" = flannel-cni-plugin ]; then | ||||
|       command="podman run --rm $url/$imgpath \"/flannel\"" | ||||
|       command="podman run -q --rm $url/$imgpath \"/flannel\"" | ||||
|     fi | ||||
|     if [ "$IM" == pause ]; then  | ||||
|       command="podman run --rm $url/$imgpath \"/pause\" \"-v\"" | ||||
|       command="podman run -q --rm $url/$imgpath \"/pause\" \"-v\"" | ||||
|     fi  | ||||
|   fi | ||||
|   echo $command | ||||
| @@ -58,7 +58,7 @@ do | ||||
|   then  | ||||
|     if [[ -n $(cat $IM.log) ]] | ||||
|     then errors="TEST ERROR OF IMAGE $IM: $(cat $IM.log); $errors" | ||||
|     else errors="TEST ERROR OF IMAGE $IM: test returned empty error, but exit status was nozero; $errors" | ||||
|     #else errors="TEST ERROR OF IMAGE $IM: test returned empty error, but exit status was nozero; $errors" | ||||
|     fi  | ||||
|   fi  | ||||
|   haserr=false | ||||
|   | ||||
| @@ -52,6 +52,8 @@ jobs: | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||: | ||||
|         env: | ||||
|           ORG: ${{ env.ORG }} | ||||
|       - name: Set repo for c10f2 (Temporary) | ||||
| @@ -73,7 +75,7 @@ jobs: | ||||
|         run: | | ||||
|           #build base with riskv64 for sisyphus if it is | ||||
|           if [[ "$BR" == "sisyphus" && "$ORG" == "base" ]]; then echo "${{ gitea.workspace }}/build.py --log-level debug -i base/base -b $BR --latest $BR --registry $BUILD_URL"; ${{ gitea.workspace }}/build.py -i base/base -b "$BR" --latest "$BR" --registry "$BUILD_URL"; fi | ||||
|           build_args="-b $BR --log-level debug --latest $BR -o $ORG --registry $BUILD_URL --package-versions {\"alt/etcd\":\"3.5.15\"}" | ||||
|           build_args="-b $BR --log-level debug --latest $BR -o $ORG --registry $BUILD_URL" | ||||
|           if [[ "$BR" == "sisyphus" ]]; then arches="--arches amd64 386 arm64 loong64 --skip-images base/base"; else arches="--arches amd64 386 arm64"; fi  | ||||
|           echo "${{ gitea.workspace }}/build.py $build_args $arches" | ||||
|           ${{ gitea.workspace }}/build.py $build_args $arches | ||||
|   | ||||
							
								
								
									
										106
									
								
								.gitea/workflows/wf_k8s.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										106
									
								
								.gitea/workflows/wf_k8s.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,106 @@ | ||||
| name: Full building alt images | ||||
| on: | ||||
|   push: | ||||
|     tags: | ||||
|       - "*_k8s" | ||||
|  | ||||
| jobs: | ||||
|   build-process: | ||||
|     runs-on: alt-sisyphus | ||||
|     outputs: | ||||
|       branch: ${{ env.BRANCH }} | ||||
|       org: ${{ env.ORG }} | ||||
|       url: ${{ env.URL }} | ||||
|       repo: ${{ env.REPO }} | ||||
|       buildres: ${{ steps.build-script.outcome }} | ||||
|     steps: | ||||
|       - name: Check workspace | ||||
|         run: | | ||||
|           repourl=$(echo $GU | cut -d '/' -f 3) | ||||
|           echo "URL=$repourl" >> ${GITHUB_ENV} | ||||
|           echo $repourl | ||||
|           reponame=$(echo $GR | cut -d '/' -f 1) | ||||
|           echo "REPO=$reponame" >> ${GITHUB_ENV} | ||||
|           echo $reponame | ||||
|         env: | ||||
|           GU: ${{ gitea.server_url }} | ||||
|           GR: ${{ gitea.repository }} | ||||
|       - name: Set repo for c10f2 (Temporary) | ||||
|         if: ${{ contains(github.ref_name, 'c10f2') }} | ||||
|         run: | | ||||
|           echo "event tag=${{ github.ref_name }}" | ||||
|           echo "10.4.0.3        update.altsp.su" >> /etc/hosts | ||||
|           echo "cat /etc/hosts" | ||||
|           cat /etc/hosts | ||||
|       - name: Update apt | ||||
|         uses: actions/init-alt-env@v1 | ||||
|       - name: Install requires | ||||
|         run: | | ||||
|           echo "apt-get install -y python3-module-tomli python3-module-jinja2 python3-module-yaml python3-module-requests podman buildah jq curl" | ||||
|           apt-get install -y python3-module-tomli python3-module-jinja2 python3-module-yaml python3-module-requests podman buildah jq curl | ||||
|           echo "apt-get install -y qemu-user-static-binfmt-aarch64 qemu-user-static-binfmt-arm qemu-user-static-binfmt-riscv qemu-user-static-binfmt-loongarch" | ||||
|           apt-get install -y qemu-user-static-binfmt-aarch64 qemu-user-static-binfmt-arm qemu-user-static-binfmt-riscv qemu-user-static-binfmt-loongarch | ||||
|       - name: Parse target branch and tag from events context, save to env | ||||
|         env: | ||||
|           EV: ${{ toJson(gitea.event) }} | ||||
|         run: | | ||||
|           echo $EV | jq '.ref' -r | sed "s/refs\/tags\//BRANCH=/g" | cut -d '_' -f 1 | ||||
|           echo $EV | jq '.ref' -r | sed "s/refs\/tags\//BRANCH=/g" | cut -d '_' -f 1 >> ${GITHUB_ENV} | ||||
|           org=$(echo $EV | jq '.ref' -r | sed 's/refs\/tags\///g' | cut -d '_' -f 2) | ||||
|           echo "ORG=$org" >> ${GITHUB_ENV} | ||||
|           echo "ORG=$org" | ||||
|       - name: Check out current repo | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Change vendor label for c10f | ||||
|         if: ${{ contains(github.ref_name, 'c10f') }} | ||||
|         run: | | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||: | ||||
|         env: | ||||
|           ORG: ${{ env.ORG }} | ||||
|       - name: Login podman gitea | ||||
|         run: | | ||||
|           echo "podman login ${{ env.URL }}" | ||||
|           podman login --username $P_USER --password $P_PASS ${{ env.URL }} | ||||
|         env: | ||||
|           P_USER: ${{ secrets.PODMAN_USER }} | ||||
|           P_PASS: ${{ secrets.PODMAN_PASS }} | ||||
|       - name: Run building script | ||||
|         id: build-script | ||||
|         run: | | ||||
|           if [[ "$BR" == "sisyphus" ]]; then arches="--arches amd64 386 arm64 loong64"; else arches="--arches amd64 386 arm64"; fi | ||||
|           build_args="--registry $BUILD_URL $arches" | ||||
|           #run build script | ||||
|           ${{ gitea.workspace }}/.gitea/workflows/k8s_buildscript.py --branch "$BR" --other-build-args "$build_args" --workspace "${{ gitea.workspace }}" | ||||
|         env: | ||||
|           ORG: ${{ env.ORG }} | ||||
|           BR: ${{ env.BRANCH }} | ||||
|           BUILD_URL: "gitea.basealt.ru/alt" | ||||
|         continue-on-error: true | ||||
|       - name: Send notification if build crashed | ||||
|         if: ${{ steps.build-script.outcome != 'success' }} | ||||
|         run: | | ||||
|           issueid=1 | ||||
|           body="Building images finish with some errors." | ||||
|           curl -X 'POST' "$URL/api/v1/repos/$REPO/image-forge/issues/$issueid/comments?token=$T" -H 'accept: application/json' -H 'Content-Type: application/json' -d "{ \"body\": \"$body\" }" -s | ||||
|           echo "notification about test error is sent to issue $issueid" | ||||
|         env: | ||||
|           T: ${{ secrets.TOKEN }} | ||||
|           BR: ${{ env.BRANCH }} | ||||
|           URL: ${{ gitea.server_url }} | ||||
|           REPO: ${{ env.REPO }} | ||||
|       - name: Delete event tag | ||||
|         run: | | ||||
|           tagname=$(echo $EV | jq '.ref' -r | sed "s/refs\/tags\///g") | ||||
|           curl -X 'DELETE' "$URL/api/v1/repos/$REPO/image-forge/tags/$tagname?token=$T" -H 'accept: application/json' -s | ||||
|           echo "tag $tagname is deleted" | ||||
|         env: | ||||
|           T: ${{ secrets.TOKEN }} | ||||
|           BR: ${{ env.BRANCH }} | ||||
|           URL: ${{ gitea.server_url }} | ||||
|           REPO: ${{ env.REPO }} | ||||
|           EV: ${{ toJson(gitea.event) }} | ||||
| @@ -43,15 +43,6 @@ jobs: | ||||
|           apt-get install -y qemu-user-static-binfmt-aarch64 qemu-user-static-binfmt-arm qemu-user-static-binfmt-ppc qemu-user-static-binfmt-riscv qemu-user-static-binfmt-loongarch | ||||
|       - name: Check out current repo | ||||
|         uses: actions/checkout@v4 | ||||
|       - name: Change vendor label for c10f | ||||
|         if: ${{ contains(github.ref_name, 'c10f') }} | ||||
|         run: | | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||: | ||||
|         env:                                                                                                                | ||||
|           ORG: ${{ env.ORG }} | ||||
|       - name: Login podman gitea | ||||
|         run: | | ||||
|           echo "podman login ${{ env.URL }}" | ||||
| @@ -77,6 +68,17 @@ jobs: | ||||
|           ver=$(echo $EV | jq '.ref' -r | sed 's/refs\/tags\///g' | cut -d '_' -f 3) | ||||
|           echo "VER=$ver" >> ${GITHUB_ENV} | ||||
|           echo "VER=$ver" | ||||
|       - name: Change vendor label for c10f | ||||
|         if: ${{ contains(github.ref_name, 'c10f') }} | ||||
|         run: | | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/Dockerfile.template ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/distroless.toml ||: | ||||
|           echo "sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||:" | ||||
|           sed -i 's/ALT Linux Team/BaseALT LLC/g' ${{ gitea.workspace }}/org/$ORG/*/info.yaml ||: | ||||
|         env:                                                                                                                | ||||
|           ORG: ${{ env.ORG }} | ||||
|       - name: Get test for image | ||||
|         run: | | ||||
|           if test -f ${{ gitea.workspace }}/org/$IM/test; then testscript=$(cat ${{ gitea.workspace }}/org/$IM/test); else testscript=""; fi | ||||
|   | ||||
							
								
								
									
										98
									
								
								build.py
									
									
									
									
									
								
							
							
						
						
									
										98
									
								
								build.py
									
									
									
									
									
								
							| @@ -37,6 +37,7 @@ class Image: | ||||
|     is_versioned: Optional[bool] | ||||
|     version_template: Union[list[str], str, None] | ||||
|     source_packages: Optional[list[str]] | ||||
|     annotations: Optional[dict[str, str]] | ||||
|  | ||||
|     def __init__(self, canonical_name: str): | ||||
|         self.canonical_name = canonical_name | ||||
| @@ -47,6 +48,7 @@ class Image: | ||||
|         if not info_file.exists(): | ||||
|             self.is_versioned = None | ||||
|             self.source_packages = None | ||||
|             self.annotations = None | ||||
|             return | ||||
|  | ||||
|         info: dict = yaml.safe_load(info_file.read_text()) | ||||
| @@ -73,6 +75,10 @@ class Image: | ||||
|         if "version_template" in info: | ||||
|             self.version_template = info["version_template"] | ||||
|  | ||||
|         self.annotations = None | ||||
|         if "annotations" in info: | ||||
|             self.annotations = info["annotations"] | ||||
|  | ||||
|  | ||||
| class Tasks: | ||||
|     def __init__(self, tasks): | ||||
| @@ -95,6 +101,8 @@ class Tasks: | ||||
|                     if image.canonical_name in i or len(i) == 0 | ||||
|                 ] | ||||
|  | ||||
| class AltAPIError(Exception): | ||||
|     pass | ||||
|  | ||||
| def api_get_source_package_version(branch: str, package_name: str) -> str: | ||||
|     api_url = "https://rdb.altlinux.org/api/site/package_versions_from_tasks" | ||||
| @@ -105,7 +113,7 @@ def api_get_source_package_version(branch: str, package_name: str) -> str: | ||||
|         params = {"arch": "x86_64", "package_type": "source", "name": package_name} | ||||
|         response = requests.get(api_url, params) | ||||
|         if response.status_code != 200: | ||||
|             raise RuntimeError( | ||||
|             raise AltAPIError( | ||||
|                     f"failed to retrieve source package version: source package {package_name!r}, branch {branch!r} " | ||||
|             ) | ||||
|         result = response.json() | ||||
| @@ -113,7 +121,7 @@ def api_get_source_package_version(branch: str, package_name: str) -> str: | ||||
|             if v["branch"] == branch: | ||||
|                 return v["version"] | ||||
|  | ||||
|         raise RuntimeError( | ||||
|         raise AltAPIError( | ||||
|             f"failed to retrieve source package version: source package {package_name!r}, branch {branch!r} " | ||||
|         ) | ||||
|  | ||||
| @@ -126,7 +134,7 @@ def api_get_source_package_version_from_task(task_id: str, package_name: str): | ||||
|     api_url = f"https://rdb.altlinux.org/api/task/packages/{task_id}" | ||||
|     response = requests.get(api_url) | ||||
|     if response.status_code != 200: | ||||
|         raise RuntimeError( | ||||
|         raise AltAPIError( | ||||
|             f"failed to retrieve source package version from task: source package {package_name!r}, task_id {task_id}" | ||||
|         ) | ||||
|  | ||||
| @@ -135,7 +143,7 @@ def api_get_source_package_version_from_task(task_id: str, package_name: str): | ||||
|         if subtask["source"]["name"] == package_name: | ||||
|             return subtask["source"]["version"] | ||||
|  | ||||
|     raise RuntimeError( | ||||
|     raise AltAPIError( | ||||
|         f"failed to retrieve source package version from task: source package {package_name!r}, task_id {task_id}" | ||||
|     ) | ||||
|  | ||||
| @@ -194,9 +202,22 @@ class Tags: | ||||
|                         package_name, | ||||
|                         task_ids[0], | ||||
|                     ) | ||||
|                     version = api_get_source_package_version_from_task( | ||||
|                         task_ids[0], package_name | ||||
|                     ) | ||||
|                     try: | ||||
|                         version = api_get_source_package_version_from_task( | ||||
|                             task_ids[0], package_name | ||||
|                         ) | ||||
|                     except AltAPIError: | ||||
|                         logger.warning( | ||||
|                             "failed getting %s package version from task %s", | ||||
|                             package_name, | ||||
|                             task_ids[0], | ||||
|                         ) | ||||
|                         logger.info( | ||||
|                             "getting %s package version from repo %s", | ||||
|                             package_name, | ||||
|                             branch, | ||||
|                         ) | ||||
|                         version = api_get_source_package_version(branch, package_name) | ||||
|                 else: | ||||
|                     logger.info( | ||||
|                         "getting %s package version from repo %s", | ||||
| @@ -411,12 +432,22 @@ class DockerBuilder: | ||||
|         else: | ||||
|             registry = "" | ||||
|             alt_image = "alt" | ||||
|  | ||||
|         if self.branch == "c10f2": | ||||
|             base_image_prefix = "c10f" | ||||
|             label_vendor = "BaseALT LLC" | ||||
|         else: | ||||
|             base_image_prefix = self.branch | ||||
|             label_vendor = "ALT Linux Team" | ||||
|  | ||||
|         rendered = JINJA_ENV.from_string(template).render( | ||||
|             alt_image=alt_image, | ||||
|             branch=self.branch, | ||||
|             base_image_prefix=base_image_prefix, | ||||
|             install_packages=install_packages, | ||||
|             organization=organization, | ||||
|             registry=registry, | ||||
|             label_vendor=label_vendor, | ||||
|             pkg_versions=PKG_VERSIONS, | ||||
|             **kwargs, | ||||
|         ) | ||||
| @@ -522,6 +553,9 @@ class DockerBuilder: | ||||
|         logger.debug("run: %s", pre_cmd + cmd) | ||||
|         subprocess.run(pre_cmd + cmd, *args, **kwargs) | ||||
|  | ||||
|     def run_with_result(self, cmd): | ||||
|         return subprocess.run(cmd, stdout=subprocess.PIPE).stdout.decode('utf-8') | ||||
|  | ||||
|     def distroless_build(self, image: Image, arches): | ||||
|         def distroless_build_arch(arch, manifest): | ||||
|             distroless_builder = self.render_full_tag( | ||||
| @@ -666,7 +700,7 @@ class DockerBuilder: | ||||
|         build_arches = set(arches) - set( | ||||
|             self.images_info.skip_arches(image.canonical_name) | ||||
|         ) | ||||
|         tags = self.tags.tags(self.branch, image) | ||||
|         tags = self.tags.tags(self.branch, image, self.tasks) | ||||
|         manifest = self.render_full_tag(image, tags[0]) | ||||
|  | ||||
|         msg = "Building image {} for {} arches".format( | ||||
| @@ -761,6 +795,28 @@ class DockerBuilder: | ||||
|             ".", | ||||
|         ] | ||||
|  | ||||
|         if image.annotations is not None and self.branch != "c10f2": | ||||
|             build_cmd = [ | ||||
|                 "podman", | ||||
|                 "build", | ||||
|                 "--rm", | ||||
|                 "--force-rm", | ||||
|                 f"--manifest={manifest}", | ||||
|                 f"--platform={platforms}" | ||||
|             ] | ||||
|             for akey, avalue in image.annotations.items(): | ||||
|                 build_cmd.append( | ||||
|                     f"--annotation={akey}={avalue}") | ||||
|  | ||||
|             d = datetime.now() | ||||
|             build_cmd.append(f"--annotation=org.opencontainers.image.created={d.isoformat("T") + "Z"}") | ||||
|  | ||||
|             ver = next((tag for tag in tags if tag != 'latest'), '') | ||||
|             if ver != '': | ||||
|                 build_cmd.append(f"--annotation=org.opencontainers.image.version={ver}") | ||||
|  | ||||
|             build_cmd.append(".") | ||||
|  | ||||
|         if PKG_VERSIONS is not None and image.canonical_name in PKG_VERSIONS: | ||||
|             build_cmd.insert( | ||||
|                 -1, f"--build-arg=PKG_VERSION={PKG_VERSIONS[image.canonical_name]}" | ||||
| @@ -773,6 +829,7 @@ class DockerBuilder: | ||||
|             tag_cmd = ["podman", "tag", manifest, other_manifest] | ||||
|             self.run(tag_cmd) | ||||
|  | ||||
|  | ||||
|     def podman_push(self, image: Image, sign=None): | ||||
|         if self.images_info.skip_branch(image.canonical_name, self.branch): | ||||
|             return | ||||
| @@ -796,6 +853,7 @@ class DockerBuilder: | ||||
|             self.run(cmd) | ||||
|  | ||||
|  | ||||
|  | ||||
| class ImagesInfo: | ||||
|     def __init__(self): | ||||
|         info = {} | ||||
| @@ -942,6 +1000,10 @@ def parse_args(): | ||||
|         type=json.loads, | ||||
|         help="json string where key is image name, value is the package version", | ||||
|     ) | ||||
|     parser.add_argument( | ||||
|         "--clean-images-limit", | ||||
|         help="remove all the images in the container storage when number of images hits the limit", | ||||
|     ) | ||||
|     parser.add_argument( | ||||
|         "--log-level", | ||||
|         default="warning", | ||||
| @@ -971,6 +1033,8 @@ def main(): | ||||
|  | ||||
|     logger.info("PKG_VERSIONS=%s", PKG_VERSIONS) | ||||
|  | ||||
|     clean_images_counter = 0 | ||||
|  | ||||
|     arches = args.arches | ||||
|     images_info = ImagesInfo() | ||||
|     tags = Tags(args.tags, args.latest) | ||||
| @@ -992,6 +1056,7 @@ def main(): | ||||
|             if "render_dockerfiles" in args.stages: | ||||
|                 db.render_dockerfiles() | ||||
|             db.load_distrolesses() | ||||
|  | ||||
|             for image in db.get_build_order(): | ||||
|                 if image.canonical_name not in args.images: | ||||
|                     continue | ||||
| @@ -1005,6 +1070,23 @@ def main(): | ||||
|                 if "push" in args.stages: | ||||
|                     db.podman_push(image, args.sign) | ||||
|  | ||||
|                 if args.clean_images_limit is not None: | ||||
|                     if clean_images_counter >= args.clean_images_limit: | ||||
|                         cmd = [ | ||||
|                             "podman", | ||||
|                             "rmi", | ||||
|                             "--all", | ||||
|                             "-f", | ||||
|                         ] | ||||
|                         db.run(cmd, | ||||
|                             check=False, | ||||
|                             stderr=subprocess.DEVNULL, | ||||
|                             stdout=subprocess.DEVNULL, | ||||
|                         ) | ||||
|                         clean_images_counter = 0 | ||||
|                     else: | ||||
|                         clean_images_counter += 1 | ||||
|  | ||||
|  | ||||
| if __name__ == "__main__": | ||||
|     main() | ||||
|   | ||||
| @@ -1,14 +1,38 @@ | ||||
| ["alt/distroless-toybox"] | ||||
| skip-branches = [ "p10", "c10f2", "c10f1" ] | ||||
|  | ||||
| ["base/distroless-toybox"] | ||||
| skip-branches = [ "p10", "c10f2", "c10f1" ] | ||||
|  | ||||
| ["alt/openjdk21"] | ||||
| skip-arches = [ "386" ] | ||||
|  | ||||
| ["alt/zot"] | ||||
| skip-arches = [ "386" ] | ||||
|  | ||||
| ["alt/kafka"] | ||||
| skip-arches = [ "386" ] | ||||
|  | ||||
| ["alt/ansible"] | ||||
| skip-branches = [ "c10f2", "c10f1", "p10" ] | ||||
|  | ||||
| ["alt/buildkit"] | ||||
| skip-branches = [ "c10f1", "p10" ] | ||||
| skip-branches = [ "c10f1", "p10" ] | ||||
|  | ||||
| ["kubevirt/virt-api"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-controller"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-exportproxy"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-exportserver"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-handler"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-launcher"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|  | ||||
| ["kubevirt/virt-operator"] | ||||
| skip-arches = [ "386", "loong64" ] | ||||
|   | ||||
| @@ -5,4 +5,13 @@ source_packages: | ||||
|   - ansible-core | ||||
|   - ansible-vim | ||||
|   - ansible-lint | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'http://www.ansible.com' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'ansible' | ||||
|   org.opencontainers.image.description: 'A radically simple IT automation system' | ||||
|   org.opencontainers.image.licenses: GPL-3.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - apache2 | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'http://httpd.apache.org' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'apache2' | ||||
|   org.opencontainers.image.description: 'The most widely used Web server on the Internet' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - buildkit | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/moby/buildkit' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'buildkit' | ||||
|   org.opencontainers.image.description: 'Concurrent, cache-efficient, and Dockerfile-agnostic builder toolkit' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,23 +0,0 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| LABEL org.opencontainers.image.title="etcd" | ||||
| LABEL org.opencontainers.image.description="Distributed reliable key-value store for the most critical data of a distributed system" | ||||
| LABEL org.opencontainers.image.source="https://github.com/etcd-io/etcd" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
|  | ||||
| {% if branch in ["sisyphus"] %} | ||||
| ARG PKG_VERSION | ||||
|  | ||||
| {{ install_packages("etcd${PKG_VERSION}") }} | ||||
| {% else %} | ||||
| {{ install_packages("etcd") }} | ||||
| {% endif %} | ||||
|  | ||||
| RUN ln -s /usr/sbin/etcd /usr/local/bin/etcd | ||||
|  | ||||
| VOLUME /data | ||||
|  | ||||
| ENTRYPOINT ["/usr/sbin/etcd", "--data-dir", "/data"] | ||||
| @@ -1,13 +0,0 @@ | ||||
| dockerfiles-alt-etcd | ||||
| ========================= | ||||
|  | ||||
| ALT dockerfile for etcd. | ||||
|  | ||||
| Copy Dockerfile somewhere and build the image: | ||||
| `$ docker build --rm -t <username>/etcd.` | ||||
|  | ||||
| And launch the etcd container: | ||||
| `docker run -d -v <etcd data dir>:/data <username>/etcd` | ||||
|  | ||||
| If etcdclt watnted it could be run via: | ||||
| `docker run --entrypoint etcdctl <username>/etcd` | ||||
| @@ -1,14 +0,0 @@ | ||||
| --- | ||||
| is_versioned: true | ||||
| version_template: | ||||
|   - "v{{ version }}" | ||||
|   - "{{ version }}" | ||||
|   - "{{ version }}-0" | ||||
| source_packages: | ||||
|   - > | ||||
|     {% if branch in ["sisyphus"] %} | ||||
|     {% raw %}etcd{{ version }}{% endraw %} | ||||
|     {% else %} | ||||
|     etcd | ||||
|     {% endif %} | ||||
| ... | ||||
| @@ -1 +0,0 @@ | ||||
| etcd --version | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - gitea | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/go-gitea/gitea' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'gitea' | ||||
|   org.opencontainers.image.description: 'Git with a cup of tea, painless self-hosted git service' | ||||
|   org.opencontainers.image.licenses: MIT | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - golang | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/golang/go' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'golang' | ||||
|   org.opencontainers.image.description: 'The Golang environment for development' | ||||
|   org.opencontainers.image.licenses: BSD | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - grafana | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/grafana/grafana' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'grafana' | ||||
|   org.opencontainers.image.description: 'Metrics dashboard and graph editor' | ||||
|   org.opencontainers.image.licenses: 'AGPL-3.0-only AND Apache-2.0' | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
							
								
								
									
										21
									
								
								org/alt/kafka/Dockerfile.template
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										21
									
								
								org/alt/kafka/Dockerfile.template
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,21 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| LABEL org.opencontainers.image.title="kafka" | ||||
| LABEL org.opencontainers.image.description="Apache Kafka is a distributed event store and stream-processing platform" | ||||
| LABEL org.opencontainers.image.source="https://github.com/apache/kafka" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
|  | ||||
| {{ install_packages("kafka", "ca-certificates", "gpg") }} | ||||
|  | ||||
| USER kafka:kafka | ||||
| EXPOSE 9092 2181 | ||||
| WORKDIR /var/lib/kafka | ||||
| VOLUME ["/var/lib/kafka","/var/log/kafka"] | ||||
|  | ||||
| COPY kafka-entrypoint.sh /kafka-entrypoint.sh | ||||
|  | ||||
| ENTRYPOINT [ "/bin/bash" ] | ||||
| CMD ["/kafka-entrypoint.sh"] | ||||
							
								
								
									
										37
									
								
								org/alt/kafka/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										37
									
								
								org/alt/kafka/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,37 @@ | ||||
| # Kafka image | ||||
|  | ||||
| Command for run kafka server: | ||||
| ``` | ||||
| podman run --rm -it -p 9092:9092 <REGISTRY>/<BRANCH>/kafka:latest | ||||
| ``` | ||||
|  | ||||
| To lead images running need use kafka-entrypoint.sh or change it. As default login kafka need runnig zookeeper and than kafka's start script.  | ||||
|  | ||||
| Commnad for using kafka: | ||||
| ``` | ||||
| podman exec -it -u kafka <CONTAINER ID> /usr/bin/sh | ||||
| ``` | ||||
| ``` | ||||
| sh-5.2$ /usr/lib/kafka/bin/kafka-topics.sh --create --topic quickstart-events --bootstrap-server localhost:9092 | ||||
| ``` | ||||
| Created topic quickstart-events. | ||||
| ``` | ||||
| sh-5.2$ /usr/lib/kafka/bin/kafka-topics.sh --describe --topic quickstart-events --bootstrap-server localhost:9092 | ||||
| ``` | ||||
| Topic: quickstart-events	TopicId: kPjhCFFAS-Sg5J3Hpgr-PA	PartitionCount: 1	ReplicationFactor: 1	Configs:  | ||||
| 	Topic: quickstart-events	Partition: 0	Leader: 0	Replicas: 0	Isr: 0	Elr: N/A	LastKnownElr: N/A | ||||
| ``` | ||||
| sh-5.2$ /usr/lib/kafka/bin/kafka-console-producer.sh --topic quickstart-events --bootstrap-server localhost:9092 | ||||
| ``` | ||||
| >hello 1 | ||||
| >hello 2 | ||||
| >hello 3 | ||||
| ``` | ||||
| sh-5.2$ /usr/lib/kafka/bin/kafka-console-consumer.sh --topic quickstart-events --from-beginning --bootstrap-server localhost:9092 | ||||
| ``` | ||||
| hello 1 | ||||
| hello 2 | ||||
| hello 3 | ||||
| ^CProcessed a total of 3 messages | ||||
|  | ||||
|  | ||||
							
								
								
									
										15
									
								
								org/alt/kafka/info.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								org/alt/kafka/info.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| --- | ||||
| is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kafka | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/apache/kafka' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kafka' | ||||
|   org.opencontainers.image.description: 'Apache Kafka is a distributed event store and stream-processing platform' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
							
								
								
									
										4
									
								
								org/alt/kafka/kafka-entrypoint.sh
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										4
									
								
								org/alt/kafka/kafka-entrypoint.sh
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,4 @@ | ||||
| #!/bin/sh -eux | ||||
|  | ||||
| nohup /usr/lib/kafka/bin/zookeeper-server-start.sh /etc/kafka/zookeeper.properties & | ||||
| /usr/lib/kafka/bin/kafka-server-start.sh /etc/kafka/server.properties | ||||
							
								
								
									
										1
									
								
								org/alt/kafka/test
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								org/alt/kafka/test
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| ls -a /usr/lib/kafka/bin/ | grep kafka && /usr/lib/kafka/bin/kafka-topics.sh --version | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - loki | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/grafana/loki' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'loki' | ||||
|   org.opencontainers.image.description: 'Like Prometheus, but for logs' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -5,4 +5,13 @@ source_packages: | ||||
|   - nginx | ||||
|   - apache2 | ||||
|   - tzdata | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://nginx.org/' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'nginx' | ||||
|   org.opencontainers.image.description: 'Fast HTTP server, extremely useful as an Apache frontend' | ||||
|   org.opencontainers.image.licenses: BSD | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -4,4 +4,13 @@ version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - node | ||||
|   - yarn | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/nodejs/node' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'node' | ||||
|   org.opencontainers.image.description: 'Evented I/O for V8 Javascript' | ||||
|   org.opencontainers.image.licenses: MIT | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - java-21-openjdk | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://openjdk-sources.osci.io' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'openjdk21' | ||||
|   org.opencontainers.image.description: 'OpenJDK 21 Runtime Environment' | ||||
|   org.opencontainers.image.licenses: 'Apache-1.1 and Apache-2.0 and BSD and BSD with advertising and GPL-2.0 and GPL-2.0 with exceptions and IJG and LGPL-2.0+ and MIT and MPL-2.0 and ALT-Public-Domain and W3C and Zlib and ISC and FTL and RSA-MD' | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,9 +3,18 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - > | ||||
|     {% if branch in [ "p10", "c10f1", "c10f2"] %} | ||||
|     {% raw %}php8.2{% endraw %} | ||||
|     {% else %} | ||||
|     {%- if branch in [ "p10", "c10f1", "c10f2"] -%} | ||||
|     php8.2 | ||||
|     {%- else -%} | ||||
|     php8.3 | ||||
|     {% endif %} | ||||
|     {%- endif -%} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/php/php-src' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'php' | ||||
|   org.opencontainers.image.description: 'The PHP language environment for development' | ||||
|   org.opencontainers.image.licenses: PHP-3.01 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - postgresql16 | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/postgres/postgres' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'postgresql16' | ||||
|   org.opencontainers.image.description: 'PostgreSQL rograms and libraries' | ||||
|   org.opencontainers.image.licenses: PostgreSQL | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -2,7 +2,7 @@ FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| LABEL org.opencontainers.image.title="alertmanager" | ||||
| LABEL org.opencontainers.image.title="prometheus-alertmanager" | ||||
| LABEL org.opencontainers.image.description="The Alertmanager handles alerts sent by client applications" | ||||
| LABEL org.opencontainers.image.source="https://github.com/prometheus/alertmanager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - prometheus-alertmanager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/prometheus/alertmanager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'prometheus-alertmanager' | ||||
|   org.opencontainers.image.description: 'The Alertmanager handles alerts sent by client applications' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - prometheus-node_exporter | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/prometheus/node_exporter' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'prometheus-node_exporter' | ||||
|   org.opencontainers.image.description: 'Prometheus exporter for hardware and OS metrics exposed by *NIX kernels' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - prometheus | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/prometheus/prometheus' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'prometheus' | ||||
|   org.opencontainers.image.description: 'Prometheus monitoring system and time series database' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -6,4 +6,13 @@ source_packages: | ||||
|   - python3-module-setuptools | ||||
|   - python3-module-pip | ||||
|   - gcc-defaults | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/python/cpython' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'python' | ||||
|   org.opencontainers.image.description: 'Python 3 and tools needed for development' | ||||
|   org.opencontainers.image.licenses: Python | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -5,4 +5,13 @@ source_packages: | ||||
|   - python | ||||
|   - python-module-setuptools | ||||
|   - gcc-defaults | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://www.python.org/downloads/source' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'python' | ||||
|   org.opencontainers.image.description: 'Python 2 and tools needed for development' | ||||
|   org.opencontainers.image.licenses: Python-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - rabbitmq-server | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/rabbitmq/rabbitmq-server' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'rabbitmq' | ||||
|   org.opencontainers.image.description: 'The RabbitMQ server' | ||||
|   org.opencontainers.image.licenses: MPL-1.1 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
							
								
								
									
										19
									
								
								org/alt/redis/Dockerfile.template
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										19
									
								
								org/alt/redis/Dockerfile.template
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| LABEL org.opencontainers.image.title="redis" | ||||
| LABEL org.opencontainers.image.description="Redis is an advanced key-value store" | ||||
| LABEL org.opencontainers.image.source="http://redis.io" | ||||
| LABEL org.opencontainers.image.licenses="BSD-3-Clause AND BSD-2-Clause AND MIT AND BSL-1.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
|  | ||||
| {{ install_packages("ca-certificates","redis","redis-cli") }} | ||||
|  | ||||
| USER _redis:_redis | ||||
| EXPOSE 6379 | ||||
| VOLUME ["/var/lib/redis","/var/log/redis"] | ||||
| WORKDIR /var/lib/redis | ||||
|  | ||||
| ENTRYPOINT [ "/usr/sbin/redis-server" ] | ||||
| CMD [ "/etc/redis/redis.conf" ] | ||||
							
								
								
									
										8
									
								
								org/alt/redis/README.md
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										8
									
								
								org/alt/redis/README.md
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,8 @@ | ||||
| # Redis image | ||||
|  | ||||
| Command for run redis-db server: | ||||
| ``` | ||||
| podman run --rm -it -v ./redis.conf:/etc/redis/redis.conf -p 6379:6379 <REGISTRY>/<BRANCH>/redis:latest | ||||
| ``` | ||||
| For testing running server you can run redis.py, if it's working you will see version redis | ||||
|  | ||||
							
								
								
									
										15
									
								
								org/alt/redis/info.yaml
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										15
									
								
								org/alt/redis/info.yaml
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,15 @@ | ||||
| --- | ||||
| is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - redis | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'http://redis.io/' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'redis' | ||||
|   org.opencontainers.image.description: 'Redis is an advanced key-value store' | ||||
|   org.opencontainers.image.licenses: 'BSD-3-Clause AND BSD-2-Clause AND MIT AND BSL-1.0' | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
							
								
								
									
										22
									
								
								org/alt/redis/redis.py
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										22
									
								
								org/alt/redis/redis.py
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,22 @@ | ||||
| #!/usr/bin/python3 | ||||
|  | ||||
| import redis | ||||
|  | ||||
|  | ||||
| def main(): | ||||
|     r = redis.Redis(host='127.0.0.1', port=6379, db=0, username='test', password='test') | ||||
|  | ||||
|     try: | ||||
|         info = r.info() | ||||
|         print(info['redis_version']) | ||||
|         response = r.ping() | ||||
|         if response: | ||||
|             print("Подключение успешно!") | ||||
|         else: | ||||
|             print("Не удалось подключиться к Redis.") | ||||
|     except redis.exceptions.RedisError as e: | ||||
|         print(f"Ошибка: {e}") | ||||
|  | ||||
| if __name__ == "__main__": | ||||
|     main() | ||||
|  | ||||
							
								
								
									
										1
									
								
								org/alt/redis/test
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										1
									
								
								org/alt/redis/test
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1 @@ | ||||
| redis-cli --version && redis-server --version | ||||
							
								
								
									
										5
									
								
								org/alt/redis/test.redis.conf
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										5
									
								
								org/alt/redis/test.redis.conf
									
									
									
									
									
										Normal file
									
								
							| @@ -0,0 +1,5 @@ | ||||
| bind 0.0.0.0 | ||||
| requirepass test | ||||
| appendonly yes | ||||
| appendfsync everysec | ||||
| user test on -DEBUG +@all ~* >test | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - docker-registry | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/docker/distribution' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'registry' | ||||
|   org.opencontainers.image.description: 'The Docker toolset to pack, ship, store, and deliver content' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,9 +3,18 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - > | ||||
|     {% if branch in ["p10", "c10f2", "c10f1"] %} | ||||
|     {% raw %}ruby{% endraw %} | ||||
|     {% else %} | ||||
|     {%- if branch in ["p10", "c10f2", "c10f1"] -%} | ||||
|     ruby | ||||
|     {%- else -%} | ||||
|     gem-irb | ||||
|     {% endif %} | ||||
|     {%- endif -%} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/ruby/ruby' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'ruby' | ||||
|   org.opencontainers.image.description: 'Interactive Ruby Shell' | ||||
|   org.opencontainers.image.licenses: 'BSD-2-Clause or Ruby' | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - systemd | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/systemd/systemd' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'systemd' | ||||
|   org.opencontainers.image.description: 'System and Session Manager' | ||||
|   org.opencontainers.image.licenses: LGPLv2.1+ | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - trivy | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://aquasecurity.github.io/trivy' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'trivy' | ||||
|   org.opencontainers.image.description: 'A Fast Vulnerability Scanner for Containers' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -5,4 +5,13 @@ source_packages: | ||||
|   - unit | ||||
|   - curl | ||||
|   - tzdata | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/nginx/unit' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'unit' | ||||
|   org.opencontainers.image.description: 'NGINX Unit is a lightweight and versatile web-server' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - zot | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/project-zot/zot' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'zot' | ||||
|   org.opencontainers.image.description: 'A production-ready vendor-neutral OCI-native container image registry (purely based on OCI Distribution Specification)' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -4,4 +4,13 @@ version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - glibc | ||||
|   - tzdata | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: base | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
|   org.opencontainers.image.description: 'Base image with localization and timezone packages' | ||||
| ... | ||||
|   | ||||
| @@ -6,4 +6,13 @@ source_packages: | ||||
|   - curl | ||||
|   - gnupg | ||||
|   - wget | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'buildpack-deps-curl' | ||||
|   org.opencontainers.image.description: 'Transfer data environment' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -7,4 +7,13 @@ source_packages: | ||||
|   - openssh | ||||
|   - procps | ||||
|   - subversion | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'buildpack-deps-scm' | ||||
|   org.opencontainers.image.description: 'Software configuration management environment' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: false | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - gcc-defaults | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'buildpack-deps' | ||||
|   org.opencontainers.image.description: 'Projects building environment' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,13 @@ source_packages: | ||||
|   - ripgrep | ||||
|   - zsh | ||||
|   - make | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'devel' | ||||
|   org.opencontainers.image.description: 'This image is only for devel or testing purposes' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -6,4 +6,13 @@ source_packages: | ||||
|   - tzdata | ||||
|   - zlib | ||||
|   - libselinux | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-base' | ||||
|   org.opencontainers.image.description: 'Base image for running dynamically linked programs' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -4,4 +4,13 @@ version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - glibc | ||||
|   - apt-repo | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-builder' | ||||
|   org.opencontainers.image.description: 'This image is used to build tarballs for distroless images' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -7,4 +7,13 @@ source_packages: | ||||
|   - glibc | ||||
|   - iproute2 | ||||
|   - vim | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-devel' | ||||
|   org.opencontainers.image.description: 'Base image for creating and debugging distroless images' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: false | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - gotop | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-gotop' | ||||
|   org.opencontainers.image.description: 'Gotop image' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: false | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - distroless-static | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-static' | ||||
|   org.opencontainers.image.description: 'Base image for running statically linked programs' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: false | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - toybox | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-toybox' | ||||
|   org.opencontainers.image.description: 'Base image with toybox environment' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: false | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - distroless-true | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'distroless-true' | ||||
|   org.opencontainers.image.description: 'True-command image for zero status returning' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="cert-manager-acmesolver" | ||||
| LABEL org.opencontainers.image.description="HTTP server used to solve ACME challenges." | ||||
| LABEL org.opencontainers.image.source="https://github.com/cert-manager/cert-manager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - cert-manager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/cert-manager/cert-manager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'cert-manager-acmesolver' | ||||
|   org.opencontainers.image.description: 'HTTP server used to solve ACME challenges' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="cert-manager-cainjector" | ||||
| LABEL org.opencontainers.image.description="cert-manager CA injector is a Kubernetes addon to automate the injection of CA data into webhooks and APIServices from cert-manager certificates." | ||||
| LABEL org.opencontainers.image.source="https://github.com/cert-manager/cert-manager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - cert-manager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/cert-manager/cert-manager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'cert-manager-cainjector' | ||||
|   org.opencontainers.image.description: 'cert-manager CA injector is a Kubernetes addon to automate the injection of CA data into webhooks and APIServices from cert-manager certificates' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="cert-manager-controller" | ||||
| LABEL org.opencontainers.image.description="Automatically provision and manage TLS certificates in Kubernetes." | ||||
| LABEL org.opencontainers.image.source="https://github.com/cert-manager/cert-manager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - cert-manager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/cert-manager/cert-manager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'cert-manager-controller' | ||||
|   org.opencontainers.image.description: 'Automatically provision and manage TLS certificates in Kubernetes' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="cert-manager-startupapicheck" | ||||
| LABEL org.opencontainers.image.description="Check that cert-manager started successfully." | ||||
| LABEL org.opencontainers.image.source="https://github.com/cert-manager/cert-manager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - cert-manager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/cert-manager/cert-manager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'cert-manager-startupapicheck' | ||||
|   org.opencontainers.image.description: 'Check that cert-manager started successfully' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="cert-manager-webhook" | ||||
| LABEL org.opencontainers.image.description="The webhook component provides API validation, mutation and conversion functionality for cert-manager." | ||||
| LABEL org.opencontainers.image.source="https://github.com/cert-manager/cert-manager" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - cert-manager | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/cert-manager/cert-manager' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'cert-manager-webhook' | ||||
|   org.opencontainers.image.description: 'The webhook component provides API validation, mutation and conversion functionality for cert-manager' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -6,14 +6,19 @@ LABEL org.opencontainers.image.title="coredns" | ||||
| LABEL org.opencontainers.image.description="CoreDNS is a DNS server that chains plugins" | ||||
| LABEL org.opencontainers.image.source="https://github.com/coredns/coredns" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| {% set version_parts = pkg_versions["k8s/coredns"].split('.') | length %} | ||||
| {% if branch in ["sisyphus"] and version_parts == 2 %} | ||||
| {% if pkg_versions and "k8s/coredns" in pkg_versions %} | ||||
| {% set num_version_parts = (pkg_versions["k8s/coredns"].split('.') | length) %} | ||||
| {% else %} | ||||
| {% set num_version_parts = 0 %} | ||||
| {% endif %} | ||||
|  | ||||
| {% if num_version_parts == 2 %} | ||||
| ARG PKG_VERSION | ||||
|  | ||||
| {{ install_packages("coredns-for-kubernetes${PKG_VERSION}") }} | ||||
| {% elif branch in ["sisyphus", "p11", "c10f2"] and version_parts == 3 %} | ||||
| {% elif num_version_parts == 3 %} | ||||
| ARG PKG_VERSION | ||||
|  | ||||
| {{ install_packages("coredns${PKG_VERSION}") }} | ||||
|   | ||||
| @@ -3,13 +3,21 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - > | ||||
|     {%- set version_parts = version.split('.') -%} | ||||
|     {%- set version_major = version_parts[1] | int -%} | ||||
|     {%- if branch in ["sisyphus"] and version_parts | length == 2 and version_major >= 33 -%} | ||||
|     {%- set num_version_parts = (version.split('.') | length) -%} | ||||
|     {%- if num_version_parts == 2 -%} | ||||
|     coredns-for-kubernetes{{ version }} | ||||
|     {%- elif branch in ["sisyphus", "p11", "c10f2"] -%} | ||||
|     {%- elif num_version_parts == 3 -%} | ||||
|     coredns{{ version }} | ||||
|     {%- else -%} | ||||
|     coredns | ||||
|     {%- endif -%} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/coredns/coredns' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'coredns' | ||||
|   org.opencontainers.image.description: 'CoreDNS is a DNS server that chains plugins' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -6,7 +6,7 @@ LABEL org.opencontainers.image.title="etcd" | ||||
| LABEL org.opencontainers.image.description="Distributed reliable key-value store for the most critical data of a distributed system" | ||||
| LABEL org.opencontainers.image.source="https://github.com/etcd-io/etcd" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| ARG PKG_VERSION | ||||
|  | ||||
|   | ||||
| @@ -6,4 +6,13 @@ version_template: | ||||
|   - "{{ version }}-0" | ||||
| source_packages: | ||||
|   - etcd-for-kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/etcd-io/etcd' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'etcd' | ||||
|   org.opencontainers.image.description: 'Distributed reliable key-value store for the most critical data of a distributed system' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -6,7 +6,7 @@ LABEL org.opencontainers.image.title="flannel-cni-plugin" \ | ||||
| 	org.opencontainers.image.description="CNI network plugin that is powered by flannel" \ | ||||
| 	org.opencontainers.image.source="https://github.com/flannel-io/cni-plugin" \ | ||||
| 	org.opencontainers.image.licenses="Apache-2.0" \ | ||||
| 	org.opencontainers.image.vendor="ALT Linux Team" | ||||
| 	org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| {{ install_packages("cni-plugin-flannel") }} | ||||
|  | ||||
|   | ||||
| @@ -15,4 +15,13 @@ version_template: >- | ||||
|   {%- endif %} | ||||
| source_packages: | ||||
|   - cni-plugin-flannel | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/flannel-io/cni-plugin' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'flannel-cni-plugin' | ||||
|   org.opencontainers.image.description: 'CNI network plugin that is powered by flannel' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -6,7 +6,7 @@ LABEL org.opencontainers.image.title="flannel" | ||||
| LABEL org.opencontainers.image.description="Network fabric for containers" | ||||
| LABEL org.opencontainers.image.source="https://github.com/flannel-io/flannel" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| {{ install_packages( | ||||
|     "iproute2", | ||||
|   | ||||
| @@ -2,3 +2,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - flannel | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/flannel-io/flannel' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'flannel' | ||||
|   org.opencontainers.image.description: 'Network fabric for containers' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="kube-apiserver" | ||||
| LABEL org.opencontainers.image.description="The Kubernetes API server validates and configures data for the api objects which include pods, services, replicationcontrollers, and others." | ||||
| LABEL org.opencontainers.image.source="https://github.com/kubernetes/kubernetes" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubernetes/kubernetes' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kube-apiserver' | ||||
|   org.opencontainers.image.description: 'The Kubernetes API server validates and configures data for the api objects which include pods, services, replicationcontrollers, and others' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="kube-controller-manager" | ||||
| LABEL org.opencontainers.image.description="The Kubernetes controller manager is a daemon that embeds the core control loops shipped with Kubernetes." | ||||
| LABEL org.opencontainers.image.source="https://github.com/kubernetes/kubernetes" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubernetes/kubernetes' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kube-controller-manager' | ||||
|   org.opencontainers.image.description: 'The Kubernetes controller manager is a daemon that embeds the core control loops shipped with Kubernetes' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="kube-proxy" | ||||
| LABEL org.opencontainers.image.description="The Kubernetes network proxy runs on each node." | ||||
| LABEL org.opencontainers.image.source="https://github.com/kubernetes/kubernetes" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubernetes/kubernetes' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kube-proxy' | ||||
|   org.opencontainers.image.description: 'The Kubernetes network proxy runs on each node' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="kube-scheduler" | ||||
| LABEL org.opencontainers.image.description="The Kubernetes scheduler is a control plane process which assigns Pods to Nodes." | ||||
| LABEL org.opencontainers.image.source="https://github.com/kubernetes/kubernetes" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubernetes/kubernetes' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kube-scheduler' | ||||
|   org.opencontainers.image.description: 'The Kubernetes scheduler is a control plane process which assigns Pods to Nodes' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| FROM {{ registry }}{{ branch }}/{{ alt_image }}:latest | ||||
| FROM {{ registry }}{{ base_image_prefix }}/{{ alt_image }}:latest | ||||
|  | ||||
| MAINTAINER alt-cloud | ||||
|  | ||||
| @@ -14,4 +14,4 @@ LABEL org.opencontainers.image.title="kubelet" \ | ||||
|     org.opencontainers.image.description="An agent that runs on each node in the cluster. It makes sure that containers are running in a Pod." \ | ||||
|     org.opencontainers.image.source="https://github.com/kubernetes/kubernetes" \ | ||||
|     org.opencontainers.image.licenses="Apache-2.0" \ | ||||
|     org.opencontainers.image.vendor="ALT Linux Team" \ | ||||
|     org.opencontainers.image.vendor="{{ label_vendor }}" \ | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: v{{ version }} | ||||
| source_packages: | ||||
|   - kubernetes{{ version }} | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubernetes/kubernetes' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'kubelet' | ||||
|   org.opencontainers.image.description: 'An agent that runs on each node in the cluster. It makes sure that containers are running in a Pod' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -5,7 +5,7 @@ MAINTAINER alt-cloud | ||||
| LABEL org.opencontainers.image.title="pause" \ | ||||
|     org.opencontainers.image.description="Simple pause image" \ | ||||
|     org.opencontainers.image.licenses="GPLv2" \ | ||||
|     org.opencontainers.image.vendor="ALT Linux Team" | ||||
|     org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| {{ install_packages("kubernetes-pause") }} | ||||
|  | ||||
|   | ||||
| @@ -2,4 +2,13 @@ | ||||
| is_versioned: true | ||||
| source_packages: | ||||
|   - kubernetes-pause | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: '' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'pause' | ||||
|   org.opencontainers.image.description: 'Simple pause image' | ||||
|   org.opencontainers.image.licenses: GPLv2 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -6,7 +6,7 @@ LABEL org.opencontainers.image.title="trivy-node-collector" | ||||
| LABEL org.opencontainers.image.description="Open source collector who collect Node information (fs and process data) and output in a table/json format" | ||||
| LABEL org.opencontainers.image.source="https://github.com/aquasecurity/k8s-node-collector" | ||||
| LABEL org.opencontainers.image.licenses="Apache-2.0" | ||||
| LABEL org.opencontainers.image.vendor="ALT Linux Team" | ||||
| LABEL org.opencontainers.image.vendor="{{ label_vendor }}" | ||||
|  | ||||
| {{ install_packages( | ||||
|     "k8s-trivy-node-collector", | ||||
|   | ||||
| @@ -2,4 +2,13 @@ | ||||
| is_versioned: true | ||||
| source_packages: | ||||
|   - k8s-trivy-node-collector | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/aquasecurity/k8s-node-collector' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'trivy-node-collector' | ||||
|   org.opencontainers.image.description: 'Open source collector who collect Node information (fs and process data) and output in a table/json format' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-api' | ||||
|   org.opencontainers.image.description: 'Kubevirt API server' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-controller' | ||||
|   org.opencontainers.image.description: 'Controller for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-exportproxy' | ||||
|   org.opencontainers.image.description: 'Export proxy for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-exportserver' | ||||
|   org.opencontainers.image.description: 'Export server for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -16,6 +16,6 @@ RUN useradd -g qemu -m -d /home/qemu -s /bin/bash -c "qemu user" -u 107 qemu > / | ||||
| 	"kubevirt-container-disk" | ||||
| ) }} | ||||
|  | ||||
| RUN cp -f /usr/share/kube-virt/virt-handler/nsswitch.conf /etc/ && cp -f /usr/share/kube-virt/virt-handler/virt_launcher.cil / | ||||
| RUN cp -f /usr/share/kube-virt/virt-handler/nsswitch.conf /etc/ | ||||
|  | ||||
| ENTRYPOINT ["/usr/bin/virt-handle"] | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-handler' | ||||
|   org.opencontainers.image.description: 'Handler component for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-launcher' | ||||
|   org.opencontainers.image.description: 'Launcher component for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
| @@ -3,4 +3,13 @@ is_versioned: true | ||||
| version_template: "{{ version }}" | ||||
| source_packages: | ||||
|   - kubevirt | ||||
| annotations: | ||||
|   org.opencontainers.image.revision: '' | ||||
|   org.opencontainers.image.source: 'https://github.com/kubevirt/kubevirt' | ||||
|   org.opencontainers.image.url: '' | ||||
|   org.opencontainers.image.version: '' | ||||
|   org.opencontainers.image.title: 'virt-operator' | ||||
|   org.opencontainers.image.description: 'Operator component for kubevirt' | ||||
|   org.opencontainers.image.licenses: Apache-2.0 | ||||
|   org.opencontainers.image.vendor: 'ALT Linux Team' | ||||
| ... | ||||
|   | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user