Fixes for hanging jobs, more verbose ci output

This commit is contained in:
Jamie Curnow 2024-11-12 15:36:38 +10:00
parent 47d7896301
commit 61c41b8ec3
No known key found for this signature in database
GPG Key ID: FFBB624C43388E9E
5 changed files with 15 additions and 6 deletions

View File

@ -16,7 +16,7 @@ var (
func Start() { func Start() {
ctx, cancel = context.WithCancel(context.Background()) ctx, cancel = context.WithCancel(context.Background())
q := &Queue{ q := &Queue{
jobs: make(chan Job), jobs: make(chan Job, 10),
ctx: ctx, ctx: ctx,
cancel: cancel, cancel: cancel,
} }

View File

@ -10,6 +10,7 @@ type Queue struct {
jobs chan Job jobs chan Job
ctx context.Context ctx context.Context
cancel context.CancelFunc cancel context.CancelFunc
mu sync.Mutex
} }
// Job - holds logic to perform some operations during queue execution. // Job - holds logic to perform some operations during queue execution.
@ -41,6 +42,8 @@ func (q *Queue) AddJobs(jobs []Job) {
// AddJob sends job to the channel. // AddJob sends job to the channel.
func (q *Queue) AddJob(job Job) { func (q *Queue) AddJob(job Job) {
q.mu.Lock()
defer q.mu.Unlock()
q.jobs <- job q.jobs <- job
} }

View File

@ -24,5 +24,8 @@
"internal": null, "internal": null,
"default_upstream": "127.0.0.11" "default_upstream": "127.0.0.11"
} }
] ],
"cache": {
"disabled": true
}
} }

View File

@ -75,6 +75,7 @@ services:
image: jc21/dnsrouter image: jc21/dnsrouter
volumes: volumes:
- ./dev/dnsrouter-config.json.tmp:/dnsrouter-config.json:ro - ./dev/dnsrouter-config.json.tmp:/dnsrouter-config.json:ro
entrypoint: /dnsrouter -v -c /dnsrouter-config.json
cypress: cypress:
image: "${IMAGE}-cypress:ci-${BUILD_NUMBER}" image: "${IMAGE}-cypress:ci-${BUILD_NUMBER}"

View File

@ -2,9 +2,11 @@ FROM cypress/included:13.15.1
COPY --chown=1000 ./test /test COPY --chown=1000 ./test /test
# Disable Cypress CLI colors # Disable Cypress CLI colors by default
ENV FORCE_COLOR=0 ARG FORCE_COLOR=0
ENV NO_COLOR=1 ARG NO_COLOR=1
ENV FORCE_COLOR=$FORCE_COLOR \
NO_COLOR=$NO_COLOR
WORKDIR /test WORKDIR /test
RUN yarn install && yarn cache clean RUN yarn install && yarn cache clean