GitLab and it's webhook for Build events - deployment

I've set up my own GitLab CE server with CI in it. I can already create a webhook to deploy my code to a server just by pushing it. (Many thanks to Matt Jones and his little invention).
However, I still have one issue there. I don't really find a very good description about GitlAbs new feature about Webhook for Build Events. I think I'll need this, since I wish to deploy my code ONLY AFTER a build was succesfull. If I set the webhook for push event, then it has no problem, inmediatly deploys the code. Can any of you provide me with a proper instruction, what do I have to make, to achieve my goal?
Thanks a lot in advance!

I use jenkins for these purposes, you can also set your preferences about when to deploy your code and run pre and post build steps. It's really useful and it has Gitlab integration with the Web hooks.

Related

Is it possible GitLab do only delivery (or deploy) the source codes manually to remote server?

I started studying GitLab for my boss's order.
I found GitLab supports built-in CI/CD features.
But I don't want CI feature. Only to deliver code manually.
...and the concept of CI/CD is too difficult to me.
Of course I am going to search this topic continuously,
but also worried that it is impossible only to deliver code from GitLab Web repository to remote server.
Anyone who know this question?
Please help me.
Gitlab is one of the most flexible platforms to code versioning and CI/CD
almost everything is possible, but of course some things needs more expertise than other
In your case, delivering code manually will work without any problem.
But you need to understand more about git concepts
look at this article https://thepilcrow.net/explaining-basic-concepts-git-and-github/
forget the differences between github and gitlab now.... focus on understanding git (gitlab is just an inferface)
After that, when you start to study ci/cd you will discover the power of gitlab :D

Integration Percy visual regression testing status check with Github

I am trying to integrate Percy.io, a visual regression testing tool with Github status check.
I have signed up for free account with Percy and paid Github version.
I wanted to setup status check with Percy with each pull request as below suggested at percy doc on status check
I have integrated Percy in Github
Added rules in Github
but still don't see check on pull request.
Added same project in percy.io too
Any Idea what I am missing over here?
It's hard to be specific without knowing more about your application, however one piece that seems to be missing from your setup is a CI/CD configuration.
Basically, you need a Continuous Integration service (such as Travis, Jenkins, CircleCI or others to trigger a build for your project so that percy can capture snapshots. Did you configure one?
See the documentation here.
Here an example configuration for one of my projects. Note that how you set this up may differ if you use a different set of tools than what's in the article.

How to get the merge request information in a gitlab-ci pipeline?

I recently got to know Dockup and while I really love this kind of integration in Github, I am wondering if the same thing can be achieved in Gitlab, for free.
Basically, what I would like to achieve is:
On merge request, build tests and deploy in a dedicated environment which would use the name of the merge request
Send a message to a given slack about the environment or the failure of the build / tests in the pipeline with the related link of the pipeline
It seems that since Gitlab 11.6 it is possible to have Pipelines for merge requests but I don't really see how to get the information of the merge request or even who has submitted the merge request to use it for creating the dedicated deployment environment in my pipeline script?
How can I get that?
Note: It seems only a webhook can provide the information about the user and all the details.
Found the information I wanted in https://docs.gitlab.com/ee/ci/variables
CI_MERGE_REQUEST_TITLE
CI_MERGE_REQUEST_PROJECT_URL
GITLAB_USER_NAME
CI_MERGE_REQUEST_ASSIGNEES
Probably won't even need to create a webservice for the webhook since everything can be found in the environment variables when running the pipeline script, this is pretty awesome!

How to configure Github to work with Concourse CI?

What is the best way to configure Github with concourse CI, concourse is up and running on a box.
How do I go from declaring a pipeline.yml in a git repo to it automatically propagating to concourse server.
Agree with Corby's suggestion.
If this is your first time using Concourse (sounds like it), then I suggest you start with a local concourse instance using Vagrant.
The Concourse documentation site has some good tutorials. Concourse-tutorial from Stark & Wayne were very helpful for me to learn concourse.
I have some basic Spring boot projects with Concourse pipelines. Give them a try.
https://github.com/akoranne/kill-java,
https://github.com/akoranne/rulesengine.
I would also advise that you join the concourse-ci slack channel. You will get lot of help.
Your question is broad enough that I might not address your complete issue in a StackOverflow answer, but I would direct you to the excellent "Flight School" tutorial, which gives step by step constructions on performing a Concourse build from a Git Repo:
https://concourse-ci.org/flight-school.html

Has anyone integrated Stratosource and Jenkins for continuous integration?

So I have a current CI setup that enables me to pull metadata from Salesforce org(using Jenkins + Ant migration tool), push it to git, create a package out of it and then re-deploy this package to another Salesforce org.
I have been hearing good things about Stratosource, and would like to know if anyone has managed to integrate Stratosource with Jenkins as part of Continuous Integration cycle.
If so, could someone please provide a few pointers?
I have tried searching for it, but apparently not many documents exist on this topic.
Thanks!