Project Description

At the moment, Uyuni uses a pretty standard frontend build chain based on Webpack 4, Terser, and a few loaders here and there. This works reliably, albeit fairly slowly. In part this may be attributed to large package sizes, in part to the tooling itself.

Over the past few years, a number of newer competitors have entered the frontend build tooling space: Snowpack, Vite and Esbuild to name a few. Many of them target build speed and development iteration speed as their primary goal. It would be great to check whether one of them can fit Uyuni.

Goal for this Hackweek

The goal for this project is to try and build the Uyuni frontend project with the three aforementioned tools: Snowpack, Vite and Esbuild. Given some of them rely on dependencies being ES modules, they might not work for this specific use case, but that needs further research.

The aim is to reduce both development turnaround times as well as production build times while keeping all existing functionality on par. The resulting tool chain should output both development and production builds, we don't want to maintain two parallel tracks for different builds.

Resources

Snowpack getting started guide: https://www.snowpack.dev/tutorials/quick-start
Vite getting started guide: https://vitejs.dev/guide/
Esbuild getting started guide: https://esbuild.github.io/getting-started/

Looking for hackers with the skills:

javascript susemanager webpack uyuni

This project is part of:

Hack Week 20

Activity

  • over 4 years ago: j_renner liked this project.
  • over 4 years ago: pagarcia liked this project.
  • over 4 years ago: Etheryte added keyword "uyuni" to this project.
  • over 4 years ago: Etheryte added keyword "javascript" to this project.
  • over 4 years ago: Etheryte added keyword "susemanager" to this project.
  • over 4 years ago: Etheryte added keyword "webpack" to this project.
  • over 4 years ago: Etheryte originated this project.

  • Comments

    Be the first to comment!

    Similar Projects

    Move Uyuni Test Framework from Selenium to Playwright + AI by oscar-barrios

    Description

    This project aims to migrate the existing Uyuni Test Framework from Selenium to Playwright. The move will improve the stability, speed, and maintainability of our end-to-end tests by leveraging Playwright's modern features. We'll be rewriting the current Selenium code in Ruby to Playwright code in TypeScript, which includes updating the test framework runner, step definitions, and configurations. This is also necessary because we're moving from Cucumber Ruby to CucumberJS.

    If you're still curious about the AI in the title, it was just a way to grab your attention. Thanks for your understanding.


    Goals

    • Migrate Core tests including Onboarding of clients
    • Improve test reliabillity: Measure and confirm a significant reduction of flakynes.
    • Implement a robust framework: Establish a well-structured and reusable Playwright test framework using the CucumberJS

    Resources