Hi GitLab community.
I am currently working on the GitLab Web API fuzzer and I am trying to test my web api with it.
However I am not entirely sure how to set it up.
Currently my gitlab ci looks like this:
include:
- template: API-Fuzzing.gitlab-ci.yml
stages:
- build
- fuzz
variables:
#
# --] Required Configuration ------------------------------------
#
# Test using an OpenAPI file
FUZZAPI_OPENAPI: openapi.json
#
# Provide the base url for the target.
# This will override the base URL in the OpenAPI specification
FUZZAPI_TARGET_URL: http://target:80
#
# --] Optional configuration [------------------------------------
#
# FUZZAPIOVERRIDESJSON is set in the CI/CD Variables section of Settings
FUZZAPI_OVERRIDES_ENV: $FUZZAPIOVERRIDESJSON
#
# Docker image published here
OPENAPI_TARGET_IMAGE: registry.gitlab.com/web-fuzzers-thesis-project/dvws-node-fuzz-testing:latest
build:
stage: build
image: docker:19.03
services:
- docker:19.03-dind
script:
#
# Build target container
- docker build -t $OPENAPI_TARGET_IMAGE .
#
# Push to registry
- docker login -u gitlab-ci-token -p $CI_JOB_TOKEN $CI_REGISTRY
- docker push $OPENAPI_TARGET_IMAGE
artifacts:
paths:
- $FUZZAPI_CONFIG
apifuzzer_fuzz:
script:
- echo "fuzzer running"
services:
- name: $OPENAPI_TARGET_IMAGE
alias: target
# end
This template is the one that I have copied from the example OpenAPI project given by GitLab in: Web API fuzzer (OpenAPI example).
I have modified so that it would work with my web api, however, every time I run it I get the following error: start service container: Error response from daemon: Cannot link to a non running container
I am new to setting up Gitlab CI/CD and I was wondering if it is possible to run a web api locally in gitlab with docker and then use the docker image to send requests to that web api.