Skip to content

GitLab

GitLab is a web-based DevOps lifecycle tool that provides a Git-repository manager providing wiki, issue-tracking, and continuous integration and deployment pipeline features, using an open-source license, developed by GitLab Inc. It is a powerful platform that covers the full software development lifecycle, from project planning and source code management to monitoring and security. It allows teams to collaborate on coding, testing, and deploying applications.

Key features of GitLab:

  • Git Repository Management: GitLab provides a user-friendly interface on top of Git functionality. It supports branch management, file locking, and merge requests.
  • Continuous Integration/Continuous Delivery (CI/CD): GitLab has built-in Continuous Integration and Continuous Delivery, making it possible to automate the entire process from code change to deployment.
  • Issue Tracking: GitLab offers issue tracking tools that allow teams to create, manage, and track issues and bugs within a project.
  • Code Review: GitLab provides code review tools that facilitate merge requests, code annotations, and inline discussion on code changes.
  • Wiki: Each GitLab project can have its own wiki, which is useful for keeping documentation close to the source code.
  • Kubernetes Integration: GitLab offers seamless integration with Kubernetes, allowing you to deploy your applications to a Kubernetes cluster.
  • Security and Compliance: GitLab provides features like Static Application Security Testing (SAST), Dynamic Application Security Testing (DAST), and container scanning to improve the security of your applications.
  • DevOps Score: It gives feedback on how your team is doing with adopting DevOps practices and how you could improve.
  • GitLab Pages: Like GitHub Pages, GitLab allows you to host static websites directly from a repository in GitLab.
  • Project Management: You can manage projects with features for time tracking, moving issues between projects, and project roadmaps.
  • Snippets: Share small pieces of code or text with others as "snippets," which are similar to GitHub's gists.
  • Import/Export: GitLab provides the ability to import projects from other platforms, as well as to export your GitLab project.
  • User Management and Permissions: Control access to your projects with fine-grained user permissions and user management tools.
  • Auto DevOps: Automatically set up your CI/CD pipeline with minimal configuration.

GitLab is unique in that it provides a single application for the entire software development and operations lifecycle. This can lead to increased efficiency and reduced complexity for teams. It can be used self-hosted on your own servers, or you can use GitLab's hosted option, GitLab.com. Its flexibility and extensive feature set make it a favourite among many organizations, from small teams to large enterprises.

Triggers:

  • Confidential issue event: Triggers when a new confidential issue is created or an existing issue is updated, closed, or reopened.
  • Confidential comment event: Triggers when a new confidential comment is made on commits, merge requests, issues, and code snippets.
  • Deployment event: Triggers when a deployment starts, succeeds, fails or is canceled.
  • Feature flag event: Triggers when a feature flag is turned on or off.
  • Issue flag event: Triggers when a new issue is created or an existing issue is updated, closed, or reopened.
  • Job event: Triggers when the status of a job changes.
  • Merge request event: Triggers when merge request is created, updated, or closed.
  • Comment event: Triggers when a new comment is made on commits, merge requests, issues, and code snippets.
  • Pipeline event: Triggers when the status of a pipeline changes.
  • Push event: Triggers when you push to the repository.
  • Release event: Triggers when a release is created or updated.
  • Tag event: Triggers when you create or delete tags in the repository.
  • Wiki page event: Triggers when a wiki page is created, updated, or deleted.

Connect with GitLab:

  1. Log in to your GitLab account.

  2. Go to the link to register a new OAuth application on Gitlab and click the Add new application button. GitLab_01.jpg

  3. Fill in the application Name. GitLab_02.jpg

  4. Go to Mation and navigate to My Apps and Add a new connection choosing GitLab from the list. GitLab_03.jpg

  5. Copy the OAuth Redirect URL from Mation and paste it into the Redirect URI field on Gitlab. GitLab_04.jpg GitLab_05.jpg

  6. Check the Confidential checkbox.

  7. Check API and read_user in the Scopes section on Gitlab. GitLab_06.jpg

  8. Click the Save application button at the end of the form.

  9. Copy the Application ID value and save it for future use. Click the Eye button to reveal the Client Secret and copy it for future use. GitLab_07.jpg

  10. Go to Mation and paste the Application ID value into the Client ID field and paste the Client Secret value into the Client Secret field. GitLab_08.jpg

    WARNING

    DO NOT click the Submit button yet!

  11. Click the Continue button on Gitlab. GitLab_07.jpg

  12. Your new application on GitLab is set up successfully. GitLab_09.jpg

  13. Now click the Submit button on Mation. GitLab_08.jpg

  14. A pop-up window appears. Click the Authorize button. GitLab_10.jpg

  15. Your GitLab connection is now established. GitLab_11.jpg

  16. Start using your new GitLab connection with Mation.