Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Build and Deploy OCI Image of hplip-printer-app Using Rockcraft #21

Merged
merged 14 commits into from
Dec 15, 2024

Conversation

rudra-iitm
Copy link
Contributor

This PR introduces the necessary code and configurations to build and deploy the OCI image of hplip-printer-app using Rockcraft. Below are the key highlights and updates:

Key Changes

  • Rockcraft Configuration:
    Added a rockcraft.yaml file containing all the configurations required to build the rock for hplip-printer-app.

  • GitHub Workflows:
    Introduced workflows to build and publish Docker images and GitHub packages.
    Introduced CI to build test snap and rock packages
    Note: Publishing to Docker Hub is currently commented out until OpenPrinting's Docker Hub setup is finalized.

  • Auto-Update Enhancements:
    Updated the auto-update.yml workflow to include the latest changes Add Argument to Specify YAML File Path ubuntu/desktop-snaps#813 from the desktop/snap repository.
    This update enables support for specifying a path to the YAML file that needs to be updated.

rudra-iitm and others added 14 commits August 10, 2024 11:50
- Added parts:
  - pappl
  - pappl-retrofit
  - qpdf
  - ghostscript
  - cups
  - libcupsfilters
  - libppd
  - cups-filters
  - pyppd
  - hplip
  - hplip-printer-app
  - avahi-daemon
  - scripts
  - dbus-scripts

- Added service to start dbus-daemon and start hplip-printer-app server

- Included scripts:
  - Scripts to start dbus-daemon
  - Makefiles and scripts to build ps-printer-app
…rporates an automated rock versioning system.

- In the workflow file .github/workflows/auto-update.yml, we add the parameter "rock-version-schema: '^debian/(\d+\.\d+\.\d+)' to the call of the GitHub action. This instructs the action to perform versioning automation and specifies the format of the upstream release tags and the upstream version number in them.
- We add "adopt-info: hplip" even with all metadata fields in rockcraft.yaml. This tells the GitHub action which part is the supplier of the upstream version number.

Add GitHub Action to Push Image to Docker Registry
- Added registry-actions.yml to automate pushing Docker images to the Docker registry.
- Utilized craft-action/rockcraft-pack from Canonical to pack the rock.
- Integrated docker/login-action for seamless authentication to Docker Hub within the GitHub Actions workflow.
- Configured the workflow to pack rock as a Docker image using Skopeo.

Added patch-files in repository
…zed setup

- Added CI pipeline for building and testing `Rock` and `Snap` packages.
- Implemented `PORT` flag support for custom port configuration in containerized printer-app.
- Updated `README` with container setup instructions, including `--network host` mode and `PORT` usage.
- Introduced `start-server.sh` for easier server initialization.
@tillkamppeter tillkamppeter merged commit f13b641 into OpenPrinting:master Dec 15, 2024
2 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants