You will have to use kubectl and SSH into the gitlab runner Pod. There are great articles out there that show you how to gain access to your Kubernetes cluster through kubectl.
Or you will have to SSH into the node that is running your gitlab runner pod. For this you'll again need kubectl.
kubectl get ns
NAME STATUS AGE
default Active 11h
gitlab-managed-apps Active 10h
kube-node-lease Active 11h
kube-public Active 11h
kube-system Active 11h
kubectl -n gitlab-managed-apps get pod
NAME READY STATUS RESTARTS AGE
runner-gitlab-runner-6987ddf6b5-rgjmw 1/1 Running 0 11h
kubectl -n gitlab-managed-apps exec --stdin --tty runner-gitlab-runner-6987ddf6b5-rgjmw -c runner-gitlab-runner -- /bin/bash
The config.toml file can be located in the following locations in the container runner-gitlab-runner:
/etc/gitlab-runner/ on *nix systems when GitLab Runner is executed as root (this is also the path for service configuration)
~/.gitlab-runner/ on *nix systems when GitLab Runner is executed as non-root
./ on other systems
I found the config.toml at ~/.gitlab-runner/config.toml. Run the following command and it will output your current config file.
cat ~/.gitlab-runner/config.toml
listen_address = ":9252"
concurrent = 4
check_interval = 3
log_level = "info"
[session_server]
session_timeout = 1800
[[runners]]
name = "runner-gitlab-runner-6987ddf6b5-rgjmw"
request_concurrency = 1
url = "https://gitlab.com/"
token = "******************"
executor = "kubernetes"
[runners.custom_build_dir]
[runners.cache]
[runners.cache.s3]
[runners.cache.gcs]
[runners.cache.azure]
[runners.kubernetes]
host = ""
bearer_token_overwrite_allowed = false
image = "ubuntu:16.04"
namespace = "gitlab-managed-apps"
namespace_overwrite_allowed = ""
privileged = true
service_account_overwrite_allowed = ""
pod_annotations_overwrite_allowed = ""
[runners.kubernetes.affinity]
[runners.kubernetes.pod_security_context]
[runners.kubernetes.volumes]
[runners.kubernetes.dns_config]
The GitLab Runner does not require a restart when you change most options. This includes parameters in the [[runners]] section and most parameters in the global section, except for listen_address. If a runner was already registered, you don’t need to register it again.
GitLab Runner checks for configuration modifications every 3 seconds and reloads if necessary. GitLab Runner also reloads the configuration in response to the SIGHUP signal. 2
If your config.toml is not in the home directory then you'll need to gain root access to the node that is running your pod. You can find the node with the following command
kubectl -n gitlab-managed-apps get pod runner-gitlab-runner-6987ddf6b5-rgjmw -o yaml | grep nodeName
nodeName: gke-cluster-1-default-pool-1937372-fhepo
Then use your cloud providers instructions on how to SSH into a node.