1

I'm trying to use drone to run a Kafka service

Here is my .drone.yml file

kind: pipeline
name: default

steps:
  - name: tests
    image: docker.repo1.acme.com/golang
    environment:
      KAFKA_HOME: /drone/src
      KAFKA_BROKER: kafka:9092
      KAFKA_TOPIC: ops_agent_test_topic
      PKG_CONFIG_PATH: /usr/local/librdkafka/1.1.0/lib/pkgconfig
    commands:
      - cd librdkafka
      - ./configure --prefix /usr
      - make
      - make install
      - cd ..
      - sleep 10
      - make test

services:
  - name: kafka
    image: spotify/kafka:latest
    environment:
      TOPICS: ops_agent_test_topic
    ports:
      - 9092
      - 2181

If I run drone exec .drone.yml locally from the command line, everything works as expected, but when it's deployed to the CI/CD server, I get Invalid or missing pipeline section. I'm curious what I'm doing wrong.

user1866924
  • 431
  • 5
  • 17

1 Answers1

1

Looks like changing it to this format does the trick:

pipeline:
  tests:
    image: docker.repo1.acme.com/golang
    environment:
      KAFKA_HOME: /drone/src
      KAFKA_BROKER: kafka:9092
      KAFKA_TOPIC: ops_agent_test_topic
      PKG_CONFIG_PATH: /usr/local/librdkafka/1.1.0/lib/pkgconfig
    commands:
      - git clone https://github.com/edenhill/librdkafka.git
      - cd librdkafka
      - ./configure --prefix /usr
      - make
      - make install
      - cd ..
      - sleep 10
      - make test

services:
  kafka:
    image: spotify/kafka:latest
    environment:
      TOPICS: ops_agent_test_topic
    ports:
      - 9092
      - 2181
user1866924
  • 431
  • 5
  • 17