https://github.com/watcherwhale/gogl-ci
A cli tool for getting insight into your gitlab pipelines
https://github.com/watcherwhale/gogl-ci
cd ci cicd cli gitlab gitlab-ci go golang
Last synced: about 2 months ago
JSON representation
A cli tool for getting insight into your gitlab pipelines
- Host: GitHub
- URL: https://github.com/watcherwhale/gogl-ci
- Owner: WatcherWhale
- License: gpl-3.0
- Created: 2024-04-21T10:36:45.000Z (about 1 year ago)
- Default Branch: master
- Last Pushed: 2024-05-01T18:39:21.000Z (about 1 year ago)
- Last Synced: 2024-05-02T10:15:13.962Z (about 1 year ago)
- Topics: cd, ci, cicd, cli, gitlab, gitlab-ci, go, golang
- Language: Go
- Homepage:
- Size: 115 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# GoGl-ci - Getting insight into your GitLab pipelines
GoGl is a tool for parsing and testing CI/CD pipelines. It can (almost) fully parse a GitLab CI pipeline with includes support.
## What usecase it solves
Writing pipelines is often paired with high uncertainty and countless commits.
In some cases you can only really test if your pipeline works correctly when it
has been actually merged into the default branch.With GoGl you can write TestPlans that define the things you want to be certain
of before merging into a default branch. You can test when jobs will run and if
these jobs have dependencies on others. This will make sure pipelines always
execute correctly.## Project Status
### Parsing Status
Implemented keywords:
- [x] Default
- See Job Keywords for real status
- [ ] Include
- [x] Local
- [x] Project
- [x] Remote
- [ ] Component
- [ ] Template
- [ ] Inputs
- [x] Stages
- [ ] Workflows
- [ ] Header Keywords
- [ ] Spec
- [ ] Inputs
- [ ] Job Keywords
- [x] allow_failure
- [x] exit_codes
- [ ] artifacts
- [ ] paths
- [ ] exclude
- [ ] expire_in
- [ ] expose_as
- [ ] name
- [ ] public
- [ ] access
- [ ] reports
- [ ] untracked
- [ ] when
- [ ] cache
- [ ] paths
- [ ] key
- [ ] key:files
- [ ] key:prefix
- [ ] untracked
- [ ] unprotect
- [ ] when
- [ ] policy
- [ ] fallback_keys
- [x] coverage
- [ ] dast_configuration
- [x] dependencies
- [ ] environment
- [ ] name
- [ ] url
- [ ] on_stop
- [ ] action
- [ ] auto_stop_in
- [ ] kubernetes
- [ ] deployment_tier
- [ ] Dynamic environments
- [x] extends
- [ ] hooks
- [ ] pre_get_sources_script
- [ ] identity
- [ ] id_tokens
- [ ] image
- [x] name
- [x] entrypoint
- [ ] docker
- [ ] pull_policy
- [ ] inherit
- [ ] default
- [ ] variables
- [x] interruptible
- [ ] needs
- [x] artifacts
- [x] project
- [x] optional
- [ ] pipeline
- [ ] pipeline:job
- [ ] parallel:matrix
- [ ] pages
- [ ] publish
- [ ] pages.path_prefix
- [ ] parallel
- [ ] parallel:matrix
- [ ] release
- [ ] tag_name
- [ ] tag_message
- [ ] name
- [ ] description
- [ ] ref
- [ ] milestones
- [ ] released_at
- [ ] assets:links
- [ ] resource_group
- [ ] retry
- [ ] when
- [ ] exit_codes
- [ ] rules
- [x] if
- [ ] changes
- [ ] changes:paths
- [ ] changes:compare_to
- [ ] exists
- [ ] exists:paths
- [ ] exists:project
- [x] when
- [x] allow_failure
- [x] needs
- [x] variables
- [ ] interruptible
- [x] script, before_script, after_script
- [ ] Reference Tags
- [ ] secrets
- [ ] vault
- [ ] gcp_secret_manager
- [ ] azure_key_vault
- [ ] file
- [ ] token
- [ ] services
- [ ] docker
- [ ] pull_policy
- [x] stage
- [ ] tags
- [ ] timeout
- [ ] trigger
- [ ] include
- [ ] project
- [ ] strategy
- [ ] forward
- [x] variables
- [ ] description
- [ ] value
- [ ] options
- [ ] expand
- [x] when
- Deprecated keywords, these won't be supported
- Globally-defined image, services, cache, before_script, after_script
- only / except
- only:refs / except:refs
- only:variables / except:variables### Rules Interpreter Status
- [x] Variables
- [x] Strings
- [x] null
- [x] Equality Operators
- [x] Regex
- [x] Logical Operators
- [x] String Null Check