.obs | ||
akri | ||
akri-agent-image | ||
akri-chart | ||
akri-controller-image | ||
akri-dashboard-extension-chart | ||
akri-debug-echo-discovery-handler-image | ||
akri-onvif-discovery-handler-image | ||
akri-opcua-discovery-handler-image | ||
akri-udev-discovery-handler-image | ||
akri-webhook-configuration-image | ||
autoconf@0154270569 | ||
baremetal-operator | ||
baremetal-operator-image | ||
cdi-chart | ||
cluster-api | ||
cluster-api-controller-image | ||
cluster-api-operator | ||
cluster-api-operator-image | ||
cluster-api-provider-metal3 | ||
cluster-api-provider-metal3-image | ||
cluster-api-provider-rke2 | ||
cluster-api-provider-rke2-bootstrap-image | ||
cluster-api-provider-rke2-controlplane-image | ||
cosign | ||
cri-tools@fc6852f89d | ||
crudini@c24bedd13b | ||
edge-image-builder | ||
edge-image-builder-image | ||
endpoint-copier-operator | ||
endpoint-copier-operator-chart | ||
endpoint-copier-operator-image | ||
fakeroot@a93afedfbd | ||
frr-k8s | ||
hauler | ||
ip-address-manager | ||
ip-address-manager-image | ||
ipcalc | ||
ironic-image | ||
ironic-ipa-downloader-image | ||
kube-rbac-proxy | ||
kubectl | ||
metal3-chart | ||
metallb | ||
metallb-chart | ||
metallb-controller-image | ||
metallb-speaker-image | ||
nm-configurator | ||
obs-service-set_version@796f9dc0b9 | ||
openstack-ironic-image | ||
rancher-turtles-airgap-resources-chart | ||
rancher-turtles-chart | ||
sriov-crd-chart | ||
sriov-network-operator-chart | ||
upgrade-controller | ||
upgrade-controller-chart | ||
upgrade-controller-image | ||
.gitattributes | ||
.gitignore | ||
.gitmodules | ||
README.md |
Factory
Contains the definition of the packages built on OBS for the SUSE Edge Solution (WIP)
This repository is linked to an OBS project: https://build.opensuse.org/project/show/isv:SUSE:Edge:Factory Every directory in this repository represents a package in that OBS project, those should be synced automatically from this repository.
Adding a package
To add a package, first create a directory with your package as you intend it in OBS.
Then run the .obs/add_package.py
script to create the package in the OBS project and add the required elements to the synchronization workflow.
This script is using the osc
command behind the scenes, so ensure you have it installed and correctly configured, as well as you have the correct permissions to create a new package in the project.
You will then get asked to push your changes.
Testing a fork or a development branch
You can create a project in your home space in OBS, use the same prjconf as the one of "isv:SUSE:Edge:Factory", and copy the repositories part of the metadata (adjust self references). Then add a scmsync stanza to your metadata like this (adjust repository path and branch):
<scmsync>https://src.opensuse.org/suse-edge/Factory#main</scmsync>
Cutting a release version branch
- Do the appropriate git branch command
- Change the project path in
.obs/common.py
file (e.g. fromisv:SUSE:Edge:Factory
toisv:SUSE:Edge:3.2
) - Change the branch reference in
.obs/common.py
file (e.g. frommain
to3.2
) - Edit the
.obs/workflows.yml
file to change the references to the correct projects - Commit those changes to the new branch and push the new branch
- Create the base and to-test projects (e.g.
isv:SUSE:Edge:3.2
andisv:SUSE:Edge:3.2:ToTest
), use theisv:SUSE:Edge:Factory
projects as example for metadata part - Use the prjconf of Factory in all those projects
- Run the
.obs/sync_packages.py
script to create all the packages in the base project - Go take a few cups of coffee/tea/mate/... while waiting for OBS to build everything
- Once built do an
osc release
of the project for it to be copied over in theToTest
section - Hand over to QA to test whatever is in
ToTest
. (You can continue to work on the base branch if needed meanwhile)