{"id":23057292,"url":"https://github.com/applicativesystem/go-apptainer-devops","last_synced_at":"2025-04-03T05:45:43.680Z","repository":{"id":262142602,"uuid":"860334682","full_name":"applicativesystem/go-apptainer-devops","owner":"applicativesystem","description":"a apptainer golang devops ","archived":false,"fork":false,"pushed_at":"2024-09-29T07:53:40.000Z","size":7721,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-11T12:57:10.696Z","etag":null,"topics":["apptainer","apptainer-container","devops","devops-tools","golang","golang-package","system-administration","system-programming"],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/applicativesystem.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-09-20T08:42:45.000Z","updated_at":"2024-09-30T08:06:05.000Z","dependencies_parsed_at":"2024-11-10T20:18:19.680Z","dependency_job_id":"f1a4bd70-465e-4745-83dc-161b896cccff","html_url":"https://github.com/applicativesystem/go-apptainer-devops","commit_stats":null,"previous_names":["applicativesystem/go-apptainer-devops"],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/applicativesystem%2Fgo-apptainer-devops","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/applicativesystem%2Fgo-apptainer-devops/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/applicativesystem%2Fgo-apptainer-devops/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/applicativesystem%2Fgo-apptainer-devops/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/applicativesystem","download_url":"https://codeload.github.com/applicativesystem/go-apptainer-devops/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":237864032,"owners_count":19378257,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["apptainer","apptainer-container","devops","devops-tools","golang","golang-package","system-administration","system-programming"],"created_at":"2024-12-16T02:11:50.251Z","updated_at":"2025-02-08T19:44:51.535Z","avatar_url":"https://github.com/applicativesystem.png","language":"Go","readme":"# golang-apptainer-devops\n\n- a apptainer installation and configuration management for linux systems.\n- creates container and also ports them.\n- add apptainer directories and also creating containers from sanbox diectories.\n\n```\nThis is for the installation of the apptainer images across the system devops\n\nUsage:\n  use [command]\n\nAvailable Commands:\n  UbuntuInstall\n  appN\n  apps\n  completion    Generate the autocompletion script for the specified shell\n  createApp\n  help          Help about any command\n\nFlags:\n  -h, --help   help for use\n\nUse \"use [command] --help\" for more information about a command.\n\n```\n\n- To create the SIF container follow this\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang-apptainer-devops% \\\ngo run main.go createApp -h\nThis will write and create the sif files for the Apptainer\n\nUsage:\n  use createApp [flags]\n\nFlags:\n  -a, --author string              author for the container/apptainer (default \"name of the author\")\n  -c, --container-install string   create the container from the specific directories (default \"create-container\")\n  -e, --envfile string             path to the environment file to be loaded (default \"path to the env file\")\n  -h, --help                       help for createApp\n  -f, --pathcommandfile string     path to the command file to be used for %run (default \"path-to-the-command-file\")\n  -r, --runcommand string          path to the run commands (default \"path to the file containing the run commands\")\n```\n\n- example of apptainer installation suid and non-suid\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops% \\\ngo run main.go apps -s yes\nUpdating and loading repositories:\nRepositories loaded.\nPackage                  Arch   Version      Repository      Size\nInstalling:\n apptainer               x86_64 1.3.4-1.fc40 updates    119.3 MiB\nInstalling dependencies:\n fakeroot                x86_64 1.36-1.fc40  updates    163.0 KiB\n fakeroot-libs           x86_64 1.36-1.fc40  updates    124.8 KiB\n\nTransaction Summary:\n Installing:        3 packages\n\nTotal size of inbound packages is 29 MiB. Need to download 29 MiB.\nAfter this operation 120 MiB will be used (install 120 MiB, remove 0 B).\n[1/3] fakeroot-libs-0:1.36-1.fc40.x86_6 100% | 115.1 KiB/s |  39.0 KiB |  00m00s\n[2/3] fakeroot-0:1.36-1.fc40.x86_64     100% | 260.9 KiB/s |  99.9 KiB |  00m00s\n[3/3] apptainer-0:1.3.4-1.fc40.x86_64   100% |   4.3 MiB/s |  28.7 MiB |  00m07s\n--------------------------------------------------------------------------------\n[3/3] Total                             100% |   4.1 MiB/s |  28.9 MiB |  00m07s\nRunning transaction\n[1/5] Verify package files              100% |  11.0   B/s |   3.0   B |  00m00s\n[2/5] Prepare transaction               100% |   3.0   B/s |   3.0   B |  00m01s\n[3/5] Installing fakeroot-libs-0:1.36-1 100% |   2.4 MiB/s | 126.0 KiB |  00m00s\n[4/5] Installing fakeroot-0:1.36-1.fc40 100% |   2.7 MiB/s | 167.5 KiB |  00m00s\n\u003e\u003e\u003e Running post-install scriptlet: fakeroot-0:1.36-1.fc40.x86_64\n\u003e\u003e\u003e Stop post-install scriptlet: fakeroot-0:1.36-1.fc40.x86_64\n[5/5] Installing apptainer-0:1.3.4-1.fc 100% |  46.6 MiB/s | 119.4 MiB |  00m03s\n\u003e\u003e\u003e Running post-install scriptlet: apptainer-0:1.3.4-1.fc40.x86_64\n\u003e\u003e\u003e Stop post-install scriptlet: apptainer-0:1.3.4-1.fc40.x86_64\n\u003e\u003e\u003e Running post-transaction scriptlet: apptainer-0:1.3.4-1.fc40.x86_64\n\u003e\u003e\u003e Stop post-transaction scriptlet: apptainer-0:1.3.4-1.fc40.x86_64\n\u003e\u003e\u003e Running trigger-install scriptlet: glibc-common-0:2.39-22.fc40.x86_64\n\u003e\u003e\u003e Stop trigger-install scriptlet: glibc-common-0:2.39-22.fc40.x86_64\n\u003e\u003e\u003e Running trigger-install scriptlet: man-db-0:2.12.0-6.fc40.x86_64\n\u003e\u003e\u003e Stop trigger-install scriptlet: man-db-0:2.12.0-6.fc40.x86_64\n```\n- example of suid build install\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops% \\\ngo run main.go appN -n yes\nUpdating and loading repositories:\nRepositories loaded.\nPackage         Arch   Version      Repository      Size\nInstalling:\n apptainer-suid x86_64 1.3.4-1.fc40 updates     17.8 MiB\n\nTransaction Summary:\n Installing:        1 packages\n\nTotal size of inbound packages is 6 MiB. Need to download 6 MiB.\nAfter this operation 18 MiB will be used (install 18 MiB, remove 0 B).\n[1/1] apptainer-suid-0:1.3.4-1.fc40.x86 100% |   2.4 MiB/s |   5.7 MiB |  00m02s\n--------------------------------------------------------------------------------\n[1/1] Total                             100% |   2.0 MiB/s |   5.7 MiB |  00m03s\nRunning transaction\n[1/3] Verify package files              100% |  19.0   B/s |   1.0   B |  00m00s\n[2/3] Prepare transaction               100% |   1.0   B/s |   1.0   B |  00m01s\n[3/3] Installing apptainer-suid-0:1.3.4 100% |  14.4 MiB/s |  17.8 MiB |  00m01s\n\u003e\u003e\u003e Running trigger-install scriptlet: glibc-common-0:2.39-22.fc40.x86_64\n\u003e\u003e\u003e Stop trigger-install scriptlet: glibc-common-0:2.39-22.fc40.x86_64\n```\n\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops% ls -la\ntotal 22216\ndrwxr-xr-x. 1 gauravsablok gauravsablok     282 Sep 26 13:04 .\ndrwxr-xr-x. 1 gauravsablok gauravsablok    1212 Sep 25 22:36 ..\n-rwxr-xr-x. 1 gauravsablok gauravsablok 5674422 Sep 23 07:45 apptainer-golang\n-rw-r--r--. 1 gauravsablok gauravsablok 5683200 Sep 23 10:50 apptainer-golang.fedora.tar\n-rwxr-xr-x. 1 gauravsablok gauravsablok 5676177 Sep 23 10:50 apptainer-golang-ubuntu\n-rw-r--r--. 1 gauravsablok gauravsablok 5683200 Sep 23 10:51 apptainer-golang-ubuntu.tar\ndrwxr-xr-x. 1 gauravsablok gauravsablok      44 Sep 23 11:28 command-env-file\ndrwxr-xr-x. 1 gauravsablok gauravsablok     166 Sep 23 13:26 .git\n-rw-r--r--. 1 gauravsablok gauravsablok     205 Sep 20 12:05 go.mod\n-rw-r--r--. 1 gauravsablok gauravsablok     896 Sep 20 12:05 go.sum\n-rw-r--r--. 1 gauravsablok gauravsablok    6915 Sep 26 13:04 main.go\n-rw-r--r--. 1 gauravsablok gauravsablok    4910 Sep 23 10:52 README.md\n```\n- installting from the git release on the server\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops% \\\ngo run main.go -h\nThis is for the installation of the apptainer images across the system devops\n\nUsage:\n  use [command]\n\nAvailable Commands:\n  UbuntuGInstall\n  UbuntuInstall\n  appN\n  apps\n  completion     Generate the autocompletion script for the specified shell\n  createApp\n  help           Help about any command\n\nFlags:\n  -h, --help   help for use\n\nUse \"use [command] --help\" for more information about a command.\n```\n- ubuntuG instal directly from the git repository.\n```\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops% \\\ngo run main.go UbuntuGInstall -h\nInstalling the Apptainer from the git release\n\nUsage:\n  use UbuntuGInstall [flags]\n\nFlags:\n  -h, --help   help for UbuntuGInstall\n[gauravsablok@ultramarine]~/Desktop/codecreatede/golang/golang-apptainer-devops%\n```\nGaurav Sablok\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapplicativesystem%2Fgo-apptainer-devops","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fapplicativesystem%2Fgo-apptainer-devops","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fapplicativesystem%2Fgo-apptainer-devops/lists"}