Skip to content

Commit

Permalink
IBM Wazi Developer for Workspaces v1.4.1
Browse files Browse the repository at this point in the history
  • Loading branch information
ArvinB authored and GitHub Enterprise committed Nov 18, 2021
1 parent d74368e commit 34a8985
Show file tree
Hide file tree
Showing 28 changed files with 382 additions and 1,395 deletions.
108 changes: 51 additions & 57 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,105 +5,99 @@
[![Documentation](https://img.shields.io/badge/Documentation-blue?color=1f618d)](https://ibm.biz/wazi-crw-doc)

## What's inside?

A Docker image that packages all the operator lifecycle manager dependencies for installing the IBM Wazi Developer for Red Hat CodeReady Workspaces (IBM Wazi Developer for Workspaces). This operator is installed into a Red Hat OpenShift Container Platform for a cluster administrator to manage. Once an instance is deployed into a cluster, then a user can use a browser to access the IBM Wazi Developer for Workspaces.

- This repository is based off of the upstream [Red Hat CodeReady for Workspaces Operator](https://github.com/redhat-developer/codeready-workspaces-operator), where the code is in another upstream [Eclipse Che Operator](https://github.com/eclipse/che-operator/) repository. Repositories gathered together downstream are all brought together into a [Red Hat CodeReady Workspaces Images](https://github.com/redhat-developer/codeready-workspaces-images) repository and the generated output is located in the respective branch.

## Documentation

Documentation can be found here for [IBM Wazi Developer for Workspaces](https://ibm.biz/wazi-crw-doc)

* The [IBM Wazi Developer for Workspaces](https://github.com/ibm/wazi-codeready-workspaces) repository - provides the devfile and plug-in registries for the Red Hat CodeReady Workspaces.
* The [IBM Wazi Developer for Workspaces Sidecars](https://github.com/ibm/wazi-codeready-workspaces-sidecars) repository - provides the supporting resources for the devfile and plug-in registries.
* The [IBM Wazi Developer for Workspaces Operator](https://github.com/ibm/wazi-codeready-workspaces-operator) repository - provides the Operator Lifecycle Manager for deployment.

## Feadback

We would love to hear feedback from you about IBM Wazi Developer for Red Hat CodeReady Workspaces.
File an issue or provide feedback here: [IBM Wazi Developer for Workspaces Issues](https://github.com/IBM/wazi-codeready-workspaces/issues)
This repository contains a Docker image that packages all the operator lifecycle manager dependencies for installing IBM Wazi Developer for Red Hat CodeReady Workspaces (IBM Wazi Developer for Workspaces). This operator is installed into a Red Hat OpenShift Container Platform for a cluster administrator to manage. Once an instance is deployed into a cluster, then a user can use a browser to access IBM Wazi Developer for Workspaces.

## IBM Wazi Developer for Red Hat CodeReady Workspaces
IBM Wazi Developer for Red Hat CodeReady Workspaces (IBM Wazi Developer) is a single integrated solution, which delivers a cloud native development experience for z/OS. It enables application developers to develop and test z/OS application components in a virtual z/OS environment on an OpenShift®-powered hybrid multicloud platform, and to use an industry standard integrated development environment (IDE) of their choice.
This repository is based off of the upstream [Red Hat CodeReady for Workspaces Operator](https://github.com/redhat-developer/codeready-workspaces-operator), whose code is in another upstream [Eclipse Che Operator](https://github.com/eclipse/che-operator/) repository. Repositories gathered together downstream are all brought together into a [Red Hat CodeReady Workspaces Images](https://github.com/redhat-developer/codeready-workspaces-images) repository, where the generated output is located in the respective branch for each version.

IBM Wazi Developer for Workspaces, a component of IBM Wazi Developer, is built on the Red Hat CodeReady Workspaces project. The core functionality for Red Hat CodeReady Workspaces is provided by an open-source project called Eclipse Che. IBM Wazi Developer for Workspaces uses Kubernetes and containers to provide your team with a consistent, secure, and zero-configuration development environment that interacts with your IBM Z platform.

IBM Wazi Developer for Workspaces provides a modern experience for mainframe software developers working with z/OS applications in the cloud. Powered by the open-source projects Zowe and Red Hat CodeReady Workspaces, IBM Wazi Developer for Workspaces offers an easy, streamlined onboarding process to provide mainframe developers the tools they need. Using container technology and stacks, IBM Wazi Developer for Workspaces brings the necessary technology to the task at hand.
## IBM Wazi Developer for Workspaces

IBM Wazi Developer for Workspaces is a component shipped with either IBM Wazi Developer for Red Hat CodeReady Workspaces (Wazi Developer for Workspaces) or IBM Developer for z/OS Enterprise Edition (IDzEE).

IBM Wazi Developer for Workspaces provides a modern experience for mainframe software developers working with z/OS applications in the cloud. Powered by the open source projects Zowe and Red Hat CodeReady Workspaces, IBM Wazi Developer for Workspaces offers an easy, streamlined onboarding process to provide mainframe developers the tools they need. Using container technology, IBM Wazi Developer for Workspaces brings the necessary tools to the task at hand.

For more benefits of IBM Wazi Developer for Workspaces, see the [IBM Wazi Developer product page](https://www.ibm.com/products/wazi-developer) or [IDzEE product page](https://www.ibm.com/products/developer-for-zos).

## Details

IBM Wazi Developer for Workspaces provides a custom stack for mainframe developers with the all-in-one mainframe development package that includes the following capabilities:
IBM Wazi Developer for Workspaces provides a custom stack with the all-in-one mainframe development package that enables mainframe developers to:

- Modern mainframe editor with rich language support for COBOL, JCL, Assembler (HLASM), and PL/I, which provides language-specific features such as syntax highlighting, outline view, declaration hovering, code completion, snippets, a preview of copybooks, copybook navigation, and basic refactoring using [IBM Z Open Editor](https://marketplace.visualstudio.com/items?itemName=IBM.zopeneditor)
- Source code management (SCM) integration to enable integration with any flavor of Git, a popular and modern parallel development SCM
- Intelligent build capability that enables developers to perform a user build with IBM Dependency Based Build for any flavor of Git
- Integrations that enable developers to work with z/OS resources such as MVS and UNIX files and JES jobs
- Connectivity to Z host using [Zowe Explorer](https://marketplace.visualstudio.com/items?itemName=Zowe.vscode-extension-for-zowe)
- Connectivity to Z host using [IBM Remote System Explorer API](https://ibm.github.io/zopeneditor-about/Docs/interact_zos_overview.html)
- Debugging COBOL and PL/I applications using [IBM Z Open Debug](https://developer.ibm.com/mainframe/2020/06/12/introducing-ibm-z-open-debug/)
- Mainframe Development package with a custom plug-in and devfile registry support using the [IBM Wazi Developer stack](https://github.com/IBM/wazi-codeready-workspaces)
- Use a modern mainframe editor with rich language support for COBOL, JCL, Assembler (HLASM), and PL/I, which provides language-specific features such as syntax highlighting, outline view, declaration hovering, code completion, snippets, a preview of copybooks, copybook navigation, and basic refactoring using IBM Z Open Editor, a component of IBM Wazi Developer for VS Code
- Integrate with any flavor of Git source code management (SCM)
- Perform a user build with IBM Dependency Based Build for any flavor of Git
- Work with z/OS resources such as MVS, UNIX files, and JES jobs
- Connect to the Z host with z/OSMF or IBM Remote System Explorer (RSE) API, using Zowe Explorer plus IBM Z Open Editor for a graphical user interface and Zowe CLI plus the RSE API plug-in for Zowe CLI for command line access
- Debug COBOL and PL/I applications using IBM Z Open Debug
- Use a mainframe development package with a custom plug-in and devfile registry support from the [IBM Wazi Developer stack](https://github.com/IBM/wazi-codeready-workspaces)

Read our official documentation on the [IBM Documentation](https://ibm.biz/wazi-crw-doc) site to learn more about IBM Wazi Developer.
## Documentation

## Prerequisites
For details of the features for IBM Wazi Developer for Workspaces, see its [official documentation](https://ibm.biz/wazi-crw-doc).

### Resources Required
| Repository | Description |
| --- | --- |
| [IBM Wazi Developer for Workspaces](https://github.com/ibm/wazi-codeready-workspaces) | The devfile and plug-in registries |
| [IBM Wazi Developer for Workspaces Sidecars](https://github.com/ibm/wazi-codeready-workspaces-sidecars) | Supporting resources for the Wazi Developer plug-ins |
| [IBM Wazi Developer for Workspaces Operator](https://github.com/ibm/wazi-codeready-workspaces-operator) | Deployment using the Operator Lifecycle Manager |

- Ensure that you have a connection to a Red Hat OpenShift Container Platform (OCP) cluster, and that you have cluster-admin permissions.
- The Red Hat OpenShift cluster must be configured with a default storage class. For more information, see OpenShift Container Platform documentation.
- If you plan to use the OpenShift oAuth, then the cluster oAuth must be configured. For more information, see Configuring the internal OAuth server.
- Install OpenShift command-line tool, which lets you create applications and manage OpenShift Container Platform projects from a terminal.
- Install IBM Cloud Pak® command-line tool, which is a command line tool to manage Container Application Software for Enterprises (CASEs).
## Feedback

We would love to hear feedback from you about IBM Wazi Developer for Workspaces.
File an issue or provide feedback here: [IBM Wazi Developer for Workspaces Issues](https://github.com/IBM/wazi-codeready-workspaces/issues)

---

**_Red Hat Content_**
## Reference: Red Hat content

## Building CRW Operator and Metadata containers
### Building CRW Operator and Metadata containers

### Operator container
#### Operator container

* The CRW operator has most of code in the upstream [che-operator](https://github.com/eclipse-che/che-operator/) repo, including this [Dockerfile](https://github.com/eclipse-che/che-operator/blob/master/Dockerfile).
- The CRW operator has most of code in the upstream [che-operator](https://github.com/eclipse-che/che-operator/) repo, including this [Dockerfile](https://github.com/eclipse-che/che-operator/blob/master/Dockerfile).

* This code is then synced to the [downstream repo](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator/?h=crw-2-rhel-8) via a job located here:
- This code is then synced to the [downstream repo](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator/?h=crw-2-rhel-8) via a job located here:

- https://main-jenkins-csb-crwqe.apps.ocp4.prod.psi.redhat.com/job/CRW_CI/ (jobs)
- https://gitlab.cee.redhat.com/codeready-workspaces/crw-jenkins/-/tree/master/jobs/CRW_CI (sources)
- https://github.com/redhat-developer/codeready-workspaces-images#jenkins-jobs (copied sources)

The Jenkinsfile transforms the Che code into CRW code and commits the changed code directly to downstream so there's no need for a branch in che-operator or to have code duplicated here.

NOTE: The job can be configured to sync from any upstream che-operator branch, eg., `SOURCE_BRANCH` = `7.26.x` or `master`.
| | |
| --- | --- |
| **NOTE** | The job can be configured to sync from any upstream che-operator branch, eg., `SOURCE_BRANCH` = `7.26.x` or `master`. |

* Once the sync is done:
- Once the sync is done:

** the [codeready-workspaces-operator](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator/?h=crw-2-rhel-8) repo is updated;
- the [codeready-workspaces-operator](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator/?h=crw-2-rhel-8) repo is updated;

** a Brew build will be triggered via **get-sources-rhpkg-container-build** job
- a Brew build will be triggered via **get-sources-rhpkg-container-build** job

** and, if successful, the Brew build will be copied to Quay as `https://quay.io/crw/crw-2-rhel8-operator`.
- and, if successful, the Brew build will be copied to Quay as `https://quay.io/crw/crw-2-rhel8-operator`.

### Metadata container
#### Metadata container

* Metadata for the CRW operator is contained in this repo. See [manifests](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/manifests), [metadata](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/metadata) and [deploy](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/deploy) folders, and this [operator-metadata.Dockerfile](https://github.com/redhat-developer/codeready-workspaces-operator/blob/master/operator-metadata.Dockerfile).
- Metadata for the CRW operator is contained in this repo. See [manifests](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/manifests), [metadata](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/metadata) and [deploy](https://github.com/redhat-developer/codeready-workspaces-operator/tree/master/deploy) folders, and this [operator-metadata.Dockerfile](https://github.com/redhat-developer/codeready-workspaces-operator/blob/master/operator-metadata.Dockerfile).

* The metadata is then synced to the [downstream repo](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator-metadata/?h=crw-2-rhel-8) via a job located here:
- The metadata is then synced to the [downstream repo](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator-metadata/?h=crw-2-rhel-8) via a job located here:

- https://main-jenkins-csb-crwqe.apps.ocp4.prod.psi.redhat.com/job/CRW_CI/ (jobs)
- https://gitlab.cee.redhat.com/codeready-workspaces/crw-jenkins/-/tree/master/jobs/CRW_CI (sources)
- https://github.com/redhat-developer/codeready-workspaces-images#jenkins-jobs (copied sources)

NOTE: The job can be configured to sync from any upstream che-operator branch, eg., `SOURCE_BRANCH` = `7.26.x` or `master`.
| | |
| --- | --- |
| **NOTE** | The job can be configured to sync from any upstream che-operator branch, eg., `SOURCE_BRANCH` = `7.26.x` or `master`. |

* Once the sync is done:
- Once the sync is done:

** the [codeready-workspaces-operator-metadata](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator-metadata/?h=crw-2-rhel-8) repo is updated;
- the [codeready-workspaces-operator-metadata](http://pkgs.devel.redhat.com/cgit/containers/codeready-workspaces-operator-metadata/?h=crw-2-rhel-8) repo is updated;

** a Brew build will be triggered via **get-sources-rhpkg-container-build** job
- a Brew build will be triggered via **get-sources-rhpkg-container-build** job

** and, if successful, the Brew build will be copied to Quay] as `https://quay.io/crw/crw-2-rhel8-operator-metadata`.
- and, if successful, the Brew build will be copied to Quay] as `https://quay.io/crw/crw-2-rhel8-operator-metadata`.

### crwctl CLI binary
#### crwctl CLI binary

* Once the operator and metadata is rebuilt, a new build of [crwctl](https://github.com/redhat-developer/codeready-workspaces-chectl) is triggered.

Expand Down

This file was deleted.

This file was deleted.

34 changes: 34 additions & 0 deletions catalog-source/catalog-source-1.4.1.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
#
# Copyright IBM Corporation 2021
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# IBM Corporation - implementation
#

apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
name: wazi-codeready-operator-catalog
namespace: openshift-marketplace
labels:
name: wazi-codeready-operator-catalog
app.kubernetes.io/name: wazi-codeready-operator-catalog
app.kubernetes.io/instance: wazi-codeready-operator-catalog-1.4.1
app.kubernetes.io/version: "1.4.1"
app.kubernetes.io/component: workspaces
app.kubernetes.io/part-of: wazi-developer
app.kubernetes.io/managed-by: olm
annotations:
productVersion: "1.4.1"

spec:
displayName: IBM Wazi Developer Operators
publisher: IBM
sourceType: grpc
image: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog@sha256:dd6ed0f026ba1ef9abea6bcdf8b8f812ce6f79356ef085149e750b1ff0dd71fe
# tag: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog:1.4.1
25 changes: 25 additions & 0 deletions catalog-source/catalog-source-ibm-catalog.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
#
# Copyright IBM Corporation 2021
# This program and the accompanying materials are made
# available under the terms of the Eclipse Public License 2.0
# which is available at https://www.eclipse.org/legal/epl-2.0/
#
# SPDX-License-Identifier: EPL-2.0
#
# Contributors:
# IBM Corporation - implementation
#

apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
name: ibm-operator-catalog
namespace: openshift-marketplace
spec:
displayName: IBM Operator Catalog
publisher: IBM
sourceType: grpc
image: icr.io/cpopen/ibm-operator-catalog:latest
updateStrategy:
registryPoll:
interval: 45m
12 changes: 6 additions & 6 deletions catalog-source/catalog-source.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,17 +18,17 @@ metadata:
labels:
name: wazi-codeready-operator-catalog
app.kubernetes.io/name: wazi-codeready-operator-catalog
app.kubernetes.io/instance: wazi-codeready-operator-catalog-1.4.0
app.kubernetes.io/version: "1.4.0"
app.kubernetes.io/instance: wazi-codeready-operator-catalog-1.4.1
app.kubernetes.io/version: "1.4.1"
app.kubernetes.io/component: workspaces
app.kubernetes.io/part-of: wazi-developer
app.kubernetes.io/managed-by: olm
annotations:
productVersion: "1.4.0"
productVersion: "1.4.1"

spec:
sourceType: grpc
displayName: IBM Wazi Developer Operators
publisher: IBM
image: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog@sha256:d7f26aa2f05fdc9812d5347f1f36eb1d5d3d77467ff34982e4d08fe89375b036
# tag: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog:1.4.0
sourceType: grpc
image: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog@sha256:dd6ed0f026ba1ef9abea6bcdf8b8f812ce6f79356ef085149e750b1ff0dd71fe
# tag: icr.io/cpopen/ibm-wazi-developer-for-workspaces-catalog:1.4.1
Loading

0 comments on commit 34a8985

Please sign in to comment.