Hi all, I have been looking into the kubernetes plugin for jenkins as an inspiration for my own plugin i would like to write. This plugin should provide a new type of agent that can be used in the declarative pipeline. Also, it would need to provide users an option to create a new type of cloud.
So far, i have been able to implement all that is needed for a new type of cloud, but i can't seem to figure out what would be extension points to provide a new type of agent. If you wonder why i am using kubernetes plugin for Jenkins as an inspiration, it's because this new agent will communicate with an open source batch job scheduler called Armada <https://armadaproject.io/>. Armada operates on top of k8s clusters, and it receives a yaml manifest that it interprets and knows how to communicate with k8s API to deploy pods and schedule jobs. So i don't need to integrate with k8s API directly. Example like this, taken from the homepage of kubernetes plugin: ``` pipeline { agent { kubernetes { yaml ''' apiVersion: v1 kind: Pod metadata: labels: some-label: some-label-value spec: containers: - name: maven image: maven:alpine command: - cat tty: true - name: busybox image: busybox command: - cat tty: true ''' retries 2 } } stages { stage('Run maven') { steps { container('maven') { sh 'mvn -version' } container('busybox') { sh '/bin/busybox' } } } } } ``` should now be: ``` pipeline { agent { armada { yaml ''' ... ''' retries 2 } } stages { .... } } ``` Can you help me out in implementing something like this? Thanks! Best regards, Ivan -- You received this message because you are subscribed to the Google Groups "Jenkins Developers" group. To unsubscribe from this group and stop receiving emails from it, send an email to jenkinsci-dev+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/jenkinsci-dev/CANju_JA1-NEfy_0E%3DRkePeRxw5rmqAo6VUW-iM%2BO4WZioofuGQ%40mail.gmail.com.