8

I tried to change docker image and added couple steps for git tag. Below is the answer worked for me, image: maven stages: - build - deploy - tag maven_build: stage: build script: - mvn clean package artifacts: paths: - target/*.jar after_script: - ls -a - cd target && ls -a - git --version - git remote remove origin ...


6

No, you can't have multiple gitlab-ci files per repository. You can see more information in the following links : https://gitlab.com/gitlab-org/gitlab-foss/issues/18157 https://gitlab.com/gitlab-org/gitlab-foss/issues/28592 Now, there are some work in progress about this, but it's not available yet. For example, you can see here ( https://gitlab.com/...


5

This is a glibc dependency issue on Alpine. This azcopy binary is compatible with Linux distributions that use glibc, GNU's C standard library. Alpine Linux uses a different libc implementation, musl-libc, which is generally not compatible to glibc. When trying to run non-Alpine-built binaries on Alpine, they'll usually fail to link since the glibc shared ...


5

I might have skipped the optional installation of docker in my Ubuntu instance, so if the gitlab runner is going to use Docker, remember to install it: curl -sSL https://get.docker.com/ | sh I got back to this issue and seem to have partially fixed it by checking it the gitlab runner is running gitlab-runner status systemctl is-enabled gitlab-runner ...


3

It might not be obvious now, but usually as projects advance full regression costs (resources/time) grow much faster than static analysis ones. You'll also find that static analysis alone isn't a sufficiently solid bug gate, it must be complemented with regression testing as well. So I'd place the full regression after the static analysis in the CI/CD ...


3

I dealt with the same issue. Some people recommended using the Gitlab group "secrets" and using before_script. Since I knew I was also going to deploy and would need other tools on my runner like "helm", I made my own docker container. I still keep my config for my clusters in a base64 encoded group secret but I set it like this in the dockerfile. ENV ...


3

You're missing the --non-interactive tag to your registration command. Full command should be: gitlab-runner register --non-interactive --locked false --run-untagged true --tag-list java --name foo --registration-token %token% --url https://myurl --executor shell Relevant documentation for non-interactive registration.


2

There currently isn't a solution for building on a specific runner in GitLab, but there is an issue open for Sticky Runners, which hopefully will be out in the next 3-6 months according to the Milestones! The work around I've done so far to build a project on a specific runner is to use the GitLab Runner API, in a rather hacky way, along the lines of: Get ...


2

https://hub.docker.com/_/docker/ Seems it's just a reference to the above... Which uses APK as the package manager


2

Surprisingly indeed GitLab works weirdly with the env vars. It evaluates them internally, though it shouldn't in my view. Value set as (in project Settings > CI/CD > Variables): 'aaa$bbb*%' becomes 'aaa*%' (with single quotes left!) Couple of of proof links: https://gitlab.com/gitlab-org/gitlab-ce/issues/45173#note_101659865 https://gitlab.com/gitlab-org/...


2

GitLab and GitLab CI are not two servers: they are softwares installed on a server. Now, while both can be installed on the same server, they can be split for scaling reason. Now your question: it all depends on what type of services your are running. Bear in mind that CI can take CPU/memory and disk bandwidth while running your CI (docker image build, ...


2

Going from this, your ClusterRole isn't configured to allow access to deployments, and the ClusterRole you've listed isn't properly bound to your service account. You could configure it with something like I did below as a troubleshooting measure/to make sure you're able to properly configure permissions and rule out an issue with the serviceaccount's role ...


2

Caching of layers with buildkit in an external registry requires an extra step or two depending on how you want to cache your layers. The easy option is to include a build arg that enables the inline cache: docker build --build-arg BUILDKIT_INLINE_CACHE=1 --cache-from ${LATEST} -t ${LATEST} -t ${IMAGE_COMMIT_TAG} . Note that the inline cache only caches ...


2

Just unregister offline runners: As per GitLab Runner commands manual: To delete the old and removed from GitLab runners, execute the following command. gitlab-runner verify --delete You are not alone P.S. The problem is common: there are many issues with questions like yours. Moreover, there are several custom recipes to unregister "offline"...


2

CI token used for code checkout is not allowed to do writes to the git repository (unlike GitHub Actions). You need to generate a new personal token and add it to secrets. See our integration project here as a sample: https://gitlab.com/taleodor/sample-helm-cd Note, if you search through StackOverflow, you may find several other ways to achieve this but in ...


1

If you're into RHEL you could look into running oVirt ( https://ovirt.org/ ). This will enable you to manage host machines, VMs and virtually anything in between through Ansible. What you need is oVirt on top of CentOS or similar, on a baremetal machine. This/these machine(s) will host your new VMs and your so-called Hosted Engine (i.e. the oVirt ...


1

Oh well, the answer was simple: why do you need to use volume only for file transfer? Just volume the directory, containing problematic folder with cert in it.


1

Gitlab CI/CD offers Docker Engine. If you can create a docker image, you can serve the application the same way as you were doing with Jenkins. You can find more details on how to integrate both here. Hope it helps.


1

I am using AzureDevOps and the trick we use when naming containers is to add build number to the label namespace/application:branch-name-bulidNumber So in your case, you could try gitlab variable CI_CONCURRENT_PROJECT_ID After comment for images clean-up you can use: docker image prune --all --filter until=48h As docker system prune and docker image ...


1

Do you have a volume mounted with gitlab-runner-prebuilt.tar.xz? Your error log makes it seem like it can't find the file when it executes.


1

have anyone tried this scenario (gitlab runner + docker on Windows) before, and have some feedback if it works or not? I installed and registered a GitLab Runner on my Windows 10 laptop following the instructions from GitLab Install GitLab Runner on Windows At first, I had trouble pulling the Windows container image: PS C:\GitLab-Runner> docker pull ...


1

There are some fundamental misunderstandings in your bullets which makes your question unclear: Apple will not allow you to develop/build using a virtual system. I believe this is a legal constraint. That said, you can run pretty much anything in VirtualBox as long as you have a legally provided image (e.g. a Linux image). You can only run the Windows ...


1

I use this script in gitlab-ci.yml image: docker:19.03 services: - docker:19.03.0-dind before_script: - $(aws ecr get-login --no-include-email --region eu-central-1) ... and provide AWS_ACCESS_KEY_ID, AWS_SECRET_ACCESS_KEY variables into Settings/CI-CD section. Ensure your region with images is the same where are you logging in.


1

I created some showcase for monorepo with Gradle as build tool and CircleCI or Bitbucket pipelines as CI tool. It's based on the same ideas as in accepted answer and I used similar setup in two projects till now. See: https://github.com/zladovan/monorepo Gradle specific stuff should be replaceable quite easily by something else. Just change tools/ci/core/...


1

The fact that all the code is in a single repository doesn't mean that all the code is changing every time a commit is pushed. I would first make the "pathways" in the code explicit. E.g. perhaps you have a few subdirectories: - App1/ - Docs/ - Code/ - Tests/ - Makefile - App2/ - Docs/ - Code/ - Tests/ - Makefile Assuming that App1 is ...


1

This is not answering only the question but also a bit more (I put this here for reference): I found out a decent way to tackle this and some complications coming afterwards... (after hours and hours of fiddling) - e.g. to execute the script in an SSH session: deploy job: variables: # the variables could come from anywhere (e.g. GitLab Settings - ...


1

Yes, full cloning of LFS files can be restricted! By default, GitLab will clone your repo into the CI/CD build directory. To limit the clone from downloading the LFS files, tell it not to do it. You do this by setting a variable in .gitlab-ci.yml like this. # Other declarations etc above the specific job jobname: variables: GIT_LFS_SKIP_SMUDGE: 1 # ...


1

Well this seems to be a docker issue. It’s keeping a whole lot of dangling volumes. check if you have some : docker volume ls -qf dangling=true Get rid of them with : docker volume rm $(docker volume ls -qf dangling=true)


1

No, jobs (which rust-latest and rust-nightly are examples of) will run in parallel if they are in the same stage (of which you only have one, build).


1

AFAIK there are only 2 ways of deploying GAE apps: using the gcloud app deploy command: gcloud app deploy - deploy the local code and/or configuration of your app to App Engine using the Admin API. From Deploying Your Apps with the Admin API: To deploy a version of your app with the Admin API: Upload your app's resources to Cloud Storage. ...


Only top voted, non community-wiki answers of a minimum length are eligible