diff --git a/README.md b/README.md index f7734d2..ce5cf5d 100644 --- a/README.md +++ b/README.md @@ -1,39 +1,53 @@ +# Podman Desktop Red Hat SSO Extension -# Red Hat Account extension +An extension for Podman Desktop to simplify logging into and creating a Red Hat account. The extension opens sso.redhat.com in the browser to retrieve an SSO token upon successful login. The SSO token is then used to log into the [registry.redhat.io](https://catalog.redhat.com/) Container Registry and to register the Linux virtual machine powering Podman Desktop via subscription-manager to grant the containers access to protected Red Hat content such as RHEL repositories. -This extension plugs into Podman Desktop an authentication provider that allows login to Red Hat SSO +# Installation -# Run and build +The extension is currently available in an Alpha version but ready to test. Extension for Podman Desktop are shipped as OCI container images. Please refer to the [Podman Desktop documentation](https://podman-desktop.io/docs/extensions/install) for installation instructions and to [Quay.io](https://quay.io/repository/redhat-developer/podman-desktop-redhat-account-ext?tab=tags) for available tags. +The first available Alpha image is `quay.io/redhat-developer/podman-desktop-redhat-account-ext:0.0.1-alpha.1`. +Starting with Podman 5.0, subscription-manager will be shipped by default. For prior versions, the extension will take care of installing subscription-manager which may take a short while and requires a reboot. -To rebuild podman-desktop and OpenShift Local extension run: +# Usage -```shell - yarn build -``` +Once installed, you can find the extension in the Settings menu which you can find in the bottom left corner of Podman Desktop: +![image](screenshots/settings.png) -To execute this extension into Podman Desktop, uses one of these commands: +To sign into your Red Hat account, open the Authentication menu and click on the drop-down button: +![image](screenshots/authentication-menu.png) -```shell - podman-desktop --extension-folder this_folder -``` - -if using the released bits from Podman Desktop +To sign into your Red Had account, Podman Desktop will open Red Hat SSO in your browser of choice. The SSO form will make sure that each user has accepted the terms and conditions, and has a valid Red Hat [developers subscription](https://developers.redhat.com/about?source=sso). If needed, you may also create a new Red Hat account and further use social login via an existing Google, Microsoft or GitHub accout: +![image](screenshots/sso.png) -or +Once signed in, there is nothing further to be done. Podman Desktop will automatically use the SSO token to log into the Red Hat container registry and to register the Linux virtual machine (i.e., podman machine) via subscription-manager. The two tasks are listed in the Tasks menu which you can open on the bottom right of Podman Desktop: +![image](screenshots/tasks.png) -```shell - yarn watch --extension-folder this_folder -``` +To verify that the sign-in process was successfull, you may build the following Dockerfile: +```Dockerfile +FROM registry.redhat.io/rhel9/toolbox +RUN dnf install -y kernel +```` -from the Podman Desktop source folder if using the develpment version from Podman Desktop +Pulling the container image `registry.redhat.io/rhel9/toolbox` requires having logged into the Red Hat container registry. Installing the `kernel` package requires access to protected content. -# Nightly build installation +# Local Development -use `ghcr.io/redhat-developer/podman-desktop-redhat-account-ext:latest` on Settings/Extension page using 'Install a new extension from OCI Image' form (see screenshot below). +To rebuild Podman Desktop and the extension run: +```shell + yarn build +``` +To execute the extension in Podman Desktop, use one of the following to options. -![image](https://user-images.githubusercontent.com/620330/232674528-9d07e38d-618c-4d69-a01a-309033b7b3f0.png) +With a pre-installed version of Podman Desktop: +```shell +podman-desktop --extension-folder this_folder +``` +In a local git tree of Podman Desktop: +```shell +yarn watch --extension-folder this_folder +``` \ No newline at end of file diff --git a/screenshots/authentication-menu.png b/screenshots/authentication-menu.png new file mode 100644 index 0000000..486848f Binary files /dev/null and b/screenshots/authentication-menu.png differ diff --git a/screenshots/settings.png b/screenshots/settings.png new file mode 100644 index 0000000..f453e75 Binary files /dev/null and b/screenshots/settings.png differ diff --git a/screenshots/sso.png b/screenshots/sso.png new file mode 100644 index 0000000..efb2fe6 Binary files /dev/null and b/screenshots/sso.png differ diff --git a/screenshots/tasks.png b/screenshots/tasks.png new file mode 100644 index 0000000..2019769 Binary files /dev/null and b/screenshots/tasks.png differ