GitLab (fewer requirements)
Minimum hardware requirements: 4 vCPU and 4 GB RAM support up to 500 users. No specific recommendation for disk size.
GitLab Artifacts - Jobs can output an archive of files and directories. This output is known as a job artifact. To share data between jobs: ā€¢ Creating artifacts - To create job artifacts, use the artifacts keyword in the .gitlab-ci.yml file. ā€¢ Using artifacts - By default, jobs in later stages automatically download all the artifacts created by jobs in earlier stages. Control artifact download behavior in jobs with dependencies. Artifact Storage - By default, GitLab uses the local disk where GitLab is installed to store the artifacts. Alternatively, use an object storage like AWS S3. Downloading Artifacts - Download artifacts both by using the web UI or the REST API.
Supporting up to 3000 users, requires 8 vCPUs, 48 GB RAM, 300 GB attached storage, 200 GB root storage.
GitHub Artifacts allow sharing of data between jobs in a workflow and store data once that workflow has completed. To share data between jobs: ā€¢ Creating artifacts - Give the uploaded file a name and upload the data (using the actions/upload-artifact action) before the job ends. ā€¢ Using artifacts - It is only possible to download artifacts (using the actions/download-artifact action) that were uploaded during the same workflow run. Artifact Storage - In GHES, artifacts are stored in the external blob storage.