Try to use Jenkins 2.0 CI environments to trigger jobs which running in openQA

Topic 1: Keep learning Jenkins CI jenkinsci

Topic 2: Learn the Oliver's hackweek topic

Topic 3: Monitor a repository once new image was included

Topic 4: Trigger the openQA jobs via Jenkins

Topic 5: ...etc.

Looking for hackers with the skills:

ci automation

This project is part of:

Hack Week 14

Activity

  • almost 8 years ago: pgeorgiadis liked this project.
  • over 8 years ago: david_chang liked this project.
  • over 8 years ago: bchou added keyword "automation" to this project.
  • over 8 years ago: bchou added keyword "ci" to this project.
  • over 8 years ago: Jeffreycheung liked this project.
  • over 8 years ago: XGWang0 joined this project.
  • over 8 years ago: bchou started this project.
  • over 8 years ago: okurz liked this project.
  • over 8 years ago: evshmarnev liked this project.
  • over 8 years ago: bchou originated this project.

  • Comments

    • bchou
      over 8 years ago by bchou | Reply

      Refer to other topic:

      Windows 10 in openQA https://hackweek.suse.com/14/projects/1468

    • bchou
      over 8 years ago by bchou | Reply

      Thanks for helps :) Cowork with XGWang about Jenkins hacks and discuss the openQA questions with okurz and WeiJiang.

      Hackweek Result: (Target is achieved)

      • 1. use [ScriptTrigger] - Poll with a shell or batch script in Jenkins

      Monitor the repository in our office(http://$server-ipaddres/iso/) once a new image was included in the repo. Thanks XGWang to Re-write a buildmonitor.py to do this job.

      $python /home/john/buildmonitor.py -u http://$server-ipaddres/iso/SLE12-SP2/ -p SLE-12-SP2-Server

      • 2. use Build item(Execute shell) in Jenkins

      Run the openQA script here.

      ISO=cat ${WORKSPACE}/SLE-12-SP2-Server

      $/usr/share/openqa/script/client --apikey xxx --apisecret yyy isos post ISO=${ISO} DISTRI=sle VERSION=12-SP2 FLAVOR=Server-DVD ARCH=x8664 HDDSIZEGB=20 QEMUCOMPRESSQCOW2=1 TEST=sles12sp2image_make

    Similar Projects

    Drag Race - comparative performance testing for pull requests by balanza

    Description

    «Sophia, a backend developer, submitted a pull request with optimizations for a critical database query. Once she pushed her code, an automated load test ran, comparing her query against the main branch. Moments later, she saw a new comment automatically added to her PR: the comparison results showed reduced execution time and improved efficiency. Smiling, Sophia messaged her team, “Performance gains confirmed!”»

    Goals

    • To have a convenient and ergonomic framework to describe test scenarios, including environment and seed;
    • to compare results from different tests
    • to have a GitHub action that executes such tests on a CI environment

    Resources

    The MVP will be built on top of Preevy and K6.


    Saline (state deployment control and monitoring tool for SUSE Manager/Uyuni) by vizhestkov

    Project Description

    Saline is an addition for salt used in SUSE Manager/Uyuni aimed to provide better control and visibility for states deploymend in the large scale environments.

    In current state the published version can be used only as a Prometheus exporter and missing some of the key features implemented in PoC (not published). Now it can provide metrics related to salt events and state apply process on the minions. But there is no control on this process implemented yet.

    Continue with implementation of the missing features and improve the existing implementation:

    • authentication (need to decide how it should be/or not related to salt auth)

    • web service providing the control of states deployment

    Goal for this Hackweek

    • Implement missing key features

    • Implement the tool for state deployment control with CLI

    Resources

    https://github.com/openSUSE/saline


    Harvester Packer Plugin by mrohrich

    Description

    Hashicorp Packer is an automation tool that allows automatic customized VM image builds - assuming the user has a virtualization tool at their disposal. To make use of Harvester as such a virtualization tool a plugin for Packer needs to be written. With this plugin users could make use of their Harvester cluster to build customized VM images, something they likely want to do if they have a Harvester cluster.

    Goals

    Write a Packer plugin bridging the gap between Harvester and Packer. Users should be able to create customized VM images using Packer and Harvester with no need to utilize another virtualization platform.

    Resources

    Hashicorp documentation for building custom plugins for Packer https://developer.hashicorp.com/packer/docs/plugins/creation/custom-builders

    Source repository of the Harvester Packer plugin https://github.com/m-ildefons/harvester-packer-plugin


    Contribute to terraform-provider-libvirt by pinvernizzi

    Description

    The SUSE Manager (SUMA) teams' main tool for infrastructure automation, Sumaform, largely relies on terraform-provider-libvirt. That provider is also widely used by other teams, both inside and outside SUSE.

    It would be good to help the maintainers of this project and give back to the community around it, after all the amazing work that has been already done.

    If you're interested in any of infrastructure automation, Terraform, virtualization, tooling development, Go (...) it is also a good chance to learn a bit about them all by putting your hands on an interesting, real-use-case and complex project.

    Goals

    • Get more familiar with Terraform provider development and libvirt bindings in Go
    • Solve some issues and/or implement some features
    • Get in touch with the community around the project

    Resources