Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mramshaw/gitlab-testing
GitLab CI integration testing
https://github.com/mramshaw/gitlab-testing
ci continous-deployment continuous-delivery continuous-integration gitlab gitlab-ci travis travis-ci
Last synced: 21 days ago
JSON representation
GitLab CI integration testing
- Host: GitHub
- URL: https://github.com/mramshaw/gitlab-testing
- Owner: mramshaw
- Created: 2018-09-21T17:42:23.000Z (over 6 years ago)
- Default Branch: master
- Last Pushed: 2019-06-03T19:43:11.000Z (over 5 years ago)
- Last Synced: 2024-12-21T04:34:01.951Z (about 2 months ago)
- Topics: ci, continous-deployment, continuous-delivery, continuous-integration, gitlab, gitlab-ci, travis, travis-ci
- Homepage:
- Size: 7.81 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# GitLab-testing
![GitLab logo](images/logo_wordmark.svg)
Getting familiar with GitLab (including workflow and CI/CD).
GitLab is fairly opinionated with regard to workflow, this is my attempt to
check it out.I am also interested in the CI/CD integrations and the various
__DevSecOps__ options (security scanning, dependency scanning, etc).## Contents
The contents are as follows:
* [Rationale](#rationale)
* [As a code repository](#as-a-code-repository)
* [CI/CD](#cicd)
* [As an Open-Source code repository](#as-an-open-source-repository)
* [Enterprise level](#enterprise-level)
* [Container Registry](#container-registry)
* [About GitLab](#about-gitlab)
* [Testing](#testing)
* [Go](#go)
* [Java (Gradle)](#java-gradle)
* [Java (Maven)](#java-maven)
* [Scala](#scala)
* [Problems](#problems)
* [To Do](#to-do)## Rationale
Compared to GitHub, [GitLab](http://gitlab.com/) offers a fuller set of services
(not all free) for integration testing and CI/CD.#### As a code repository
At its base, GitLab is a code repository tool like GitHub or [BitBucket](http://bitbucket.org/).
#### CI/CD
At the free level, GitLab offers an integrated replacement for CI tooling such
as [Travis CI](http://travis-ci.org/) or [CircleCI](https://circleci.com/).#### As an Open-Source repository
GitLab has a very tiny fraction of the projects that GitHub has.
GitLab has very rudimentary support for discovering new projects (GitHub really
shines in this area), but this will no doubt improve in the future.#### Enterprise level
GitLab shines at the enterprise level, where it is very popular.
It can be run offline, making it an attactive alternative to solutions such
as [Jenkins](http://jenkins.io/) or [GoCD](http://www.gocd.org/).#### Container Registry
GitLab offers a container registry, much like [Docker Hub](http://hub.docker.com/)
or [Google Container Registry](http://cloud.google.com/container-registry/).## About GitLab
GitLab describes itself as:
> a single application for the entire software development lifecycle. From
> project planning and source code management to CI/CD, monitoring, and security.From http://about.gitlab.com/
## Testing
So far, tested with a number of projects (mostly migrations from GitHub), listed below.
#### Go
* [Radix Trie](http://github.com/mramshaw/radix-trie)
[The `go` template uses an interesting approach to dependency management.]
* [GitLab](http://gitlab.com/mramshaw/gitlab)
[This was created in GitLab rather than migrated from GitHub.]
#### Java (Gradle)
* [AWS Lambda Sample - Java](http://github.com/mramshaw/aws-lambda-sample)
[Not really suitable for testing integration as it mainly works via manual testing.]
#### Java (Maven)
[Requires a `pom.xml` file.]
* [Alexa Skills Kit - Java](http://github.com/mramshaw/alexa-skills-kit-java)
[Somewhat old and dated - needing updating.]
#### Scala
[Requires a `build.sbt` file.]
* [Ad-Tech Scala/Akka exercise](http://github.com/mramshaw/ad-tech)
* [Spray Book Catalog](http://github.com/mramshaw/spray-book-catalog)[The tests for the `Spray Book Catalog` didn't work correctly to start with.]
## Problems
The CI template for Scala does not seem to work correctly.
The attached file is meant to be an update.
## To Do
- [x] Graphic added
- [x] Add Table of Contents
- [x] Test CI/CD with GitLab
- [ ] Test CI/CD with a project that requires QA, Staging, Production
- [ ] More testing