vania-janet/multiturn-rag-retrieval-data huggingface dataset:
* qName = "mypackage/foo" results in namespace = default, package = mypackage, action/trigger = "foo"
* qName = "/mynamespace/foo" results in namespace = mynamespace, package = default, action/trigger = "foo"
* qName = "/mynamespace/mypackage/foo" results in namespace = mynamespace, package = mypackage, action/trigger = "foo"



All other combinations issue a WhiskError.QualifiedName error. Therefore, when you are using qualified names, you must wrap the call in a "do/try/catch" construct.





 Invoking actions with mobile SDK from WhiskButton 

For convenience, the SDK includes a WhiskButton, which extends the UIButton to allow it to invoke actions. To use the WhiskButton, follow this example:

var whiskButton = WhiskButton(frame: CGRectMake(0,0,20,20))
whiskButton.setupWhiskAction("helloConsole", package: "mypackage", namespace: "_", credentials: credentialsConfiguration!, hasResult: false, parameters: nil, urlSession: nil)
let myParams = ["name":"value"]
// Call this when you detect a press event, e.g. in an IBAction, to invoke the action
whiskButton.invokeAction(parameters: myParams, callback: { reply, error in
if let error = error {
print("Oh no, error: (error)")
} else {
print("Success: (reply)")
}
})
// or alternatively you can set up a "self contained" button that listens for press events on itself and invokes an action
var whiskButtonSelfContained = WhiskButton(frame: CGRectMake(0,0,20,20))
If restarting your pod does not resolve the issue, [reload your worker nodes](https://cloud.ibm.com/docs/containers?topic=containers-kubernetes-service-clics_worker_reload).
3. Verify that you use the latest IBM Cloud and IBM Cloud Kubernetes Service plug-in version.

ibmcloud update

ibmcloud plugin repo-plugins

ibmcloud plugin update







 Verifying that the Portworx storage driver and plug-in pods show a status of Running 

Follow the steps to check the status of your storage driver and plug-in pods and review any error messages.



1. List the pods in the kube-system namespace.

kubectl get pods -n kube-system | grep portworx|stork

Example output:

portworx-594rw 1/1 Running 0 20h
portworx-rn6wk 1/1 Running 0 20h
portworx-rx9vf 1/1 Running 0 20h
stork-6b99cf5579-5q6x4 1/1 Running 0 20h
stork-6b99cf5579-slqlr 1/1 Running 0 20h
stork-6b99cf5579-vz9j4 1/1 Running 0 20h
stork-scheduler-7dd8799cc-bl75b 1/1 Running 0 20h
stork-scheduler-7dd8799cc-j4rc9 1/1 Running 0 20h
stork-scheduler-7dd8799cc-knjwt 1/1 Running 0 20h
2. If the storage driver and plug-in pods don't show a Running status, get more details of the pod to find the root cause. Depending on the status of your pod, you might not be able to execute all the following commands.



1. Get the names of the containers that run in the driver pod.
Review the pod details to verify that the plug-in installation succeeded.



1. Verify the installation succeeded by listing the driver pods.

kubectl get pod --all-namespaces -o wide | grep object

Example output

ibmcloud-object-storage-driver-9n8g8 1/1 Running 0 2m
ibmcloud-object-storage-plugin-7c774d484b-pcnnx 1/1 Running 0 2m

The installation is successful when you see one ibmcloud-object-storage-plugin pod and one or more ibmcloud-object-storage-driver pods. The number of ibmcloud-object-storage-driver pods equals the number of worker nodes in your cluster. All pods must be in a Running state for the plug-in to function properly. If the pods fail, run kubectl describe pod -n ibm-object-s3fs <pod_name> to find the root cause for the failure.
2. Verify that the storage classes are created successfully.

kubectl get storageclass | grep s3

Example output

ibmc-s3fs-cold-cross-region ibm.io/ibmc-s3fs 8m
ibmc-s3fs-cold-regional ibm.io/ibmc-s3fs 8m
ibmc-s3fs-flex-cross-region ibm.io/ibmc-s3fs 8m
ibmc-s3fs-flex-perf-cross-region ibm.io/ibmc-s3fs 8m
ibmc-s3fs-flex-perf-regional ibm.io/ibmc-s3fs 8m
ibmc-s3fs-flex-regional ibm.io/ibmc-s3fs 8m
ibmc-s3fs-standard-cross-region ibm.io/ibmc-s3fs 8m
ibmc-s3fs-standard-perf-cross-region ibm.io/ibmc-s3fs 8m
ibmc-s3fs-standard-perf-regional ibm.io/ibmc-s3fs 8m
- Added a pluggable system for Java toolchains provisioning.

For more details see https://docs.gradle.org/7.6/release-notes.html

------------------------------------------------------------
Gradle 7.6
------------------------------------------------------------

Build time: 2022-11-25 13:35:10 UTC
Revision: daece9dbc5b79370cc8e4fd6fe4b2cd400e150a8

Kotlin: 1.7.10
Groovy: 3.0.13
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 17.0.5 (Eclipse OpenJ9 openj9-0.35.0)
OS: Linux 5.15.49-linuxkit amd64

 oc version
Client Version: 4.11.21
Kustomize Version: v4.5.4

 zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

 unzip
UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send

 git --version
git version 2.31.1

 curl
- Added a pluggable system for Java toolchains provisioning.

For more details see https://docs.gradle.org/7.6/release-notes.html

------------------------------------------------------------
Gradle 7.6
------------------------------------------------------------

Build time: 2022-11-25 13:35:10 UTC
Revision: daece9dbc5b79370cc8e4fd6fe4b2cd400e150a8

Kotlin: 1.7.10
Groovy: 3.0.13
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 11.0.17 (Eclipse OpenJ9 openj9-0.35.0)
OS: Linux 5.15.49-linuxkit amd64

 oc version
Client Version: 4.11.21
Kustomize Version: v4.5.4

 zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

 unzip
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.

 git --version
git version 2.39.0

 curl
* [Gradle](https://gradle.org/install/)
* The custom-crawler-docs.zip file from an installed Discovery instance
* The JSch package
* The following files for the example custom connector:



* Java source code (SftpCrawler.java and SftpSecurityHandler.java)
* XML definition file (template.xml)
* Properties file (messages.properties)



Do not change the names or paths of the example custom connector files. Doing so can result in problems, including build failures.







 Compiling and packaging the source code 



1. Ensure you are in the custom connector development directory on your local system:

cd {local_directory}
2. Use Gradle to compile your Java source code and to create a compressed file that includes all of the required components for the custom connector:

gradle build packageCustomCrawler



Gradle creates a file in {local_directory}/build/distributions/{built_connector_zip_file}, where the name of the {built_connector_zip_file} is based on the rootProject.name value of settings.gradle. For example, if the line reads as follows, Gradle generates a file that is named {local_directory}/build/distributions/my-sftp-connector.zip.

rootProject.name = 'my-sftp-connector'





 Next step 

Proceed to [Installing and uninstalling a custom connector](https://cloud.ibm.com/docs/discovery-data?topic=discovery-data-install-connector) to install the custom connector to your Discovery instance.
If the problem persists, open an IBM Cloud support case.

See the troubleshooting topic on [File storage and block storage: PVC remains in a pending state](https://cloud.ibm.com/docs/containers?topic=containers-file_pvc_pending) for more details.





 After I deploy a node, I'm seeing a message in my Kubernetes cluster on IBM Cloud reporting that the pod has hit a crash loop backoff. Is this an error? 

I see an error in my Kubernetes cluster on IBM Cloud reporting that the pod has hit a crash loop backoff and am worried that my node has failed to deploy.

 Why it’s happening 

This node has failed to deploy.

 How to fix it 

The node has failed to deploy. There can be several reasons for this, but you must go to your console, delete the node, and attempt to redeploy it. Make sure you are using the correct MSP, enroll ID, and secret.
- Added a pluggable system for Java toolchains provisioning.

For more details see https://docs.gradle.org/7.6/release-notes.html

------------------------------------------------------------
Gradle 7.6
------------------------------------------------------------

Build time: 2022-11-25 13:35:10 UTC
Revision: daece9dbc5b79370cc8e4fd6fe4b2cd400e150a8

Kotlin: 1.7.10
Groovy: 3.0.13
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 11.0.17 (Eclipse OpenJ9 openj9-0.35.0)
OS: Linux 5.15.49-linuxkit amd64

 oc version
Client Version: 4.11.18
Kustomize Version: v4.5.4

 zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

 unzip
UnZip 6.00 of 20 April 2009, by Debian. Original by Info-ZIP.

 git --version
git version 2.39.0

 curl
Why does my app pod fail with an Operation not permitted error? 

Virtual Private Cloud

Classic infrastructure

  What’s happening 

When you create a PVC, you see an error message similar to the following:

EPERM: operation not permitted

  Why it’s happening 

IAM has introduced a refresh_token_expiration key which causes an issue with the IAM credential response parser, where the parser was not able to differentiate between expiration and refresh_token_expiration.

This issue is resolved in the [community repo](https://github.com/s3fs-fuse/s3fs-fuse/pull/1421) and in the IBM Cloud Object Storage plug-in.

  How to fix it 

Complete the steps to [update your IBM Cloud Object Storage plug-in to the latest version](https://cloud.ibm.com/docs/openshift?topic=openshift-storage_cos_installupdate_cos_plugin).
- Added a pluggable system for Java toolchains provisioning.

For more details see https://docs.gradle.org/7.6/release-notes.html

------------------------------------------------------------
Gradle 7.6
------------------------------------------------------------

Build time: 2022-11-25 13:35:10 UTC
Revision: daece9dbc5b79370cc8e4fd6fe4b2cd400e150a8

Kotlin: 1.7.10
Groovy: 3.0.13
Ant: Apache Ant(TM) version 1.10.11 compiled on July 10 2021
JVM: 17.0.5 (Eclipse OpenJ9 openj9-0.35.0)
OS: Linux 5.15.49-linuxkit amd64

 oc version
Client Version: 4.11.13
Kustomize Version: v4.5.4

 zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

 unzip
UnZip 6.00 of 20 April 2009, by Info-ZIP. Maintained by C. Spieler. Send

 git --version
git version 2.31.1

 curl
* [Using TOTP MFA to create an infrastructure API key for IBM Cloud Kubernetes Service](https://cloud.ibm.com/docs/containers?topic=containers-cluster_infra_errorscreate-api-key-totp-mfa)





[VPC: Why is no VPC available when I create a cluster in the console?](https://cloud.ibm.com/docs/containers?topic=containers-ts_no_vpcts_no_vpc)

[Why do I get an error that my PodSecurityConfiguration is not valid?](https://cloud.ibm.com/docs/containers?topic=containers-ts-pod-security-resetts-pod-security-reset)

[Why does my cluster upgrade fail due to Pod Security upgrade prerequisites?](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securityts-app-pod-security)



* [Could not get PodSecurityPolicies](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securitycould-not-get-psps)
* [Found non-IBM PodSecurityPolicy](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securitynon-ibm-psp)
* [Could not get ClusterRoleBinding privileged-psp-user](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securitypsp-user-not-get)
* [ClusterRoleBinding privileged-psp-user does not have expected roleRef](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securityunexpected-role-ref)
* [ClusterRoleBinding privileged-psp-user does not have expected subjects](https://cloud.ibm.com/docs/containers?topic=containers-ts-app-pod-securitypsp-privilieged-unexpected-subjects)
OS name: "linux", version: "4.19.121-linuxkit", arch: "amd64", family: "unix"

 gradle -version

Welcome to Gradle 6.8.3!

Here are the highlights of this release:
- Faster Kotlin DSL script compilation
- Vendor selection for Java toolchains
- Convenient execution of tasks in composite builds
- Consistent dependency resolution

For more details see https://docs.gradle.org/6.8.3/release-notes.html

------------------------------------------------------------
Gradle 6.8.3
------------------------------------------------------------

Build time: 2021-02-22 16:13:28 UTC
Revision: 9e26b4a9ebb910eaa1b8da8ff8575e514bc61c78

Kotlin: 1.4.20
Groovy: 2.5.12
Ant: Apache Ant(TM) version 1.10.9 compiled on September 27 2020
JVM: 11.0.10 (Eclipse OpenJ9 openj9-0.24.0)
OS: Linux 4.19.121-linuxkit amd64

 oc version
oc v3.11.0+0cbc58b
kubernetes v1.11.0+d4cacc0
features: Basic-Auth GSSAPI Kerberos SPNEGO

 zip
Copyright (c) 1990-2008 Info-ZIP - Type 'zip "-L"' for software license.
This is Zip 3.0 (July 5th 2008), by Info-ZIP.

 unzip
Debugging Block Storage for Classic failures 

Review the options to debug Block Storage for Classic and find the root causes of any failures.



 Checking whether the pod that mounts your storage instance is successfully deployed 

Follow the steps to review any error messages related to pod deployment.



1. List the pods in your cluster. A pod is successfully deployed if the pod shows a status of Running.

oc get pods
2. Get the details of your pod and review any error messages that are displayed in the Events section of your CLI output.

oc describe pod <pod_name>
3. Retrieve the logs for your pod and review any error messages.

oc logs <pod_name>
4. [Review the Block Storage for Classic troubleshooting documentation for steps to resolve common errors](https://cloud.ibm.com/docs/openshift?topic=openshift-sitemapsitemap_block_storage).







 Restarting your app pod 

Some issues can be resolved by restarting and redeploying your pods. Follow the steps to redeploy a specific pod.



1. If your pod is part of a deployment, delete the pod and let the deployment rebuild it. If your pod is not part of a deployment, delete the pod and reapply your pod configuration file.



1. Delete the pod.

oc delete pod <pod_name>

Example output

pod "nginx" deleted
2. Reapply the configuration file to redeploy the pod.

oc apply -f <app.yaml>

Example output

pod/nginx created



2. If restarting your pod does not resolve the issue, [reload your worker nodes](https://cloud.ibm.com/docs/openshift?topic=openshift-kubernetes-service-clics_worker_reload).
3. Verify that you use the latest IBM Cloud and IBM Cloud Kubernetes Service plug-in version.

ibmcloud update

ibmcloud plugin repo-plugins
* batchManagement-1.0
* beanValidation-1.1
* beanValidation-2.0
* bells-1.0
* blueprint-1.0







 C 



* cdi-1.0
* cdi-1.2
* cdi-2.0
* cloudant-1.0
* cloudAutowiring-1.0
* concurrent-1.0
* constrainedDelegation-1.0
* couchdb-1.0







 E 



* ejb-3.2
* ejbLite-3.1
* ejbLite-3.2
* el-3.0
* eventLogging-1.0







 F 



* federatedRegistry-1.0







 H 



* httpWhiteboard-1.0







 J 



* jacc-1.5
* jaspic-1.1
* javaee-7.0
* javaee-8.0
* javaMail-1.5
* javaMail-1.6
* jaxb-2.2
* jaxrs-1.1
* jaxrs-2.0
* jaxrs-2.1
* jaxws-2.2
* jca-1.6
* jca-1.7
* jcaInboundSecurity-1.0
* jdbc-4.0
* jdbc-4.1
* jdbc-4.2
* jms-1.1
* jms-2.0
* jmsMdb-3.1
* jmsMdb-3.2
* jndi-1.0
* jpa-2.0
* jpa-2.1
* jpa-2.2
* jsf-2.0
* jsf-2.2
* jsf-2.3
* jsfContainer-2.2
* json-1.0
* jsonb-1.0
"date": "2021-07-15T14:26:06.301Z",
"type": "image",
"related": [
"b5bbbbb55555b5555b555b55b5555bb5b555b5b555bb5b55bbb5555fbbbbb"
]
}
Show more

Running the command to add a release:

$ cocoa locker asset add release:my-app@v1.2.3 --type generic --date 2021-06-01T12:00:00 --related docker://us.icr.io/foo/bar:v1.2.3@sha256:0000000011111111222222223333333344444444555555556666666677777777 --related docker://us.icr.io/foo/baz:v1.2.3@sha256:0000000011111111222222223333333344444444555555556666666677777777

Example output:

0000000011111111222222223333333344444444555555556666666677777777%





 cocoa locker asset get < URI > 

Retrieves an asset from the evidence locker.

Options:

--org (Required) Owner of the evidence locker repo, defaults to EVIDENCE_LOCKER_REPO_OWNER
--repo (Required) Name of the evidence locker repo, defaults to EVIDENCE_LOCKER_REPO_NAME
--type Type of the asset
--version Show version number
--git-provider Git service provider ("github")
--git-token-path Git token path to read the secret from
--git-api-url Github API url
--format Output format ("id", "json", default: "id")

Run the command:
If you did not lock the data store in step 2: Check that no pods were created directly before you deleted the BlockAffinity and IPAMBlock. If pods were created, you must delete the BlockAffinity and IPAMBlock for this block again. Then, delete any pods that use an IP address in this block by running oc delete pod <pod> so the pod is recreated with an IP address from a different block.

oc get pods -A
7. Repeat these steps for any other blocks that that have 0 IPS IN USE.



5. If you locked the data store in step 2: Unlock the data store.

calicoctl datastore migrate unlock
Why do cluster master operations fail due to a broken webhook? 

Virtual Private Cloud

Classic infrastructure

This troubleshooting topic is not for general webhook troubleshooting. See [Debugging webhooks](https://cloud.ibm.com/docs/containers?topic=containers-ts-webhook-debug) for webhook problems not related to updating the cluster master.

 What’s happening 

During a master operation such as updating your cluster version, the cluster had a broken webhook application.

Now, master operations can't complete. You see an error similar to the following:

Cannot complete cluster master operations because the cluster has a broken webhook application. For more information, see the troubleshooting docs: 'https://ibm.biz/master_webhook'

 Why it’s happening 

Your cluster has configurable Kubernetes webhook resources, validating or mutating admission webhooks, that can intercept and modify requests from various services in the cluster to the API server in the cluster master.

Because webhooks can change or reject requests, broken webhooks can impact the functionality of the cluster in various ways, such as preventing you from updating the master version or other maintenance operations. For more information, see the [Dynamic Admission Control](https://kubernetes.io/docs/reference/access-authn-authz/extensible-admission-controllers/) in the Kubernetes documentation.

Potential causes for broken webhooks include:



* The underlying resource that issues the request is missing or unhealthy, such as a Kubernetes service, endpoint, or pod.
* The webhook is part of an add-on or other plug-in application that did not install correctly or is unhealthy.
* Your cluster might have a networking connectivity issue that prevents the webhook from communicating with the Kubernetes API server in the cluster master.



 How to fix it 

Identify and restore the resource that causes the broken webhook.



1. Create a test pod to get an error that identifies the broken webhook.
throw VendingMachineError.insufficientFunds(coinsNeeded: 5)
} catch {
completion(nil, error)
}
}







 Packaging a Swift 4.2 file 

Compile a single source file that doesn't depend on external libraries. Use the flag -compile with the name of the main method.

Before you begin



* [Install Docker](https://hub.docker.com/search/?offering=community&type=edition).
* Package your app dependencies with your app.



Package your app by running the following command.

docker run -i openwhisk/action-swift-v4.2 -compile main <hello.swift >hello.zip

The Docker container reads the content of the file from stdin, and writes a compressed archive with the compiled Swift executable file to stdout.





 Packaging Swift 4.2 multi-file projects and dependencies 

Package your Swift 4.2 multi-file projects and dependencies by creating a directory structure, compressing the contents, and then passing the compressed file to Docker.

Before you begin



* [Install Docker](https://hub.docker.com/search/?offering=community&type=edition).
* Package your app dependencies with your app.



Package your app.



1. To compile multiple files and include external dependencies, create the following directory structure.

.
├── Package.swift
└── Sources
└── main.swift

The directory Sources/ contains a file that is named main.swift.

The Package.swift must start with a comment that specifies version 4.2 for the Swift tooling:

// swift-tools-version:4.2
import PackageDescription

let package = Package(
name: "Action",
products: [
.executable(
name: "Action",
targets: "Action"]
)
],
dependencies: [
: Important: When you install the Speech services, an object that contains a randomly generated password for the PostgreSQL datastore is created by default. You can choose instead to specify the password manually. If you do, the properties of the YAML file for the secrets object have changed. For more information, see the topic about managing your datastores in [Administering Watson Speech to Text](https://www.ibm.com/docs/en/cloud-paks/cp-data/4.0?topic=text-administering-watson-speech).

Important: PostgreSQL pods do not start with EnterpriseDB version 1.10 operator
: Important: With Speech to Text for IBM Cloud Pak for Data version 4.0.3, PostgreSQL pods based on the EnterpriseDB version 1.10 operator can fail to start. This prevents the Speech services from starting. A workaround exists for this problem. If your Speech services fail to start, see [PostgreSQL pods do not start with EnterpriseDB version 1.10 operator](https://www.ibm.com/support/pages/node/6525340) for information about diagnosing and resolving the problem.

This problem is fixed in Speech to Text for IBM Cloud Pak for Data version 4.0.4.

New support for IBM Spectrum Scale Container Native storage class
: Since version 4.0.3, the Speech services support the IBM Spectrum® Scale Container Native storage class. To use IBM Spectrum Scale, specify "ibm-spectrum-scale-sc" for the storageClass property of the Speech services custom resource. For more information, see [Installing Watson Speech to Text](https://www.ibm.com/docs/en/cloud-paks/cp-data/4.0?topic=text-installing-watson-speech).

Interaction of Speech services with MinIO datastore during installation
: The Speech services runtime components, sttRuntime and ttsRuntime, cannot start until the models and voices for the services are fully uploaded into the MinIO datastore. During installation, the services might fail and automatically restart themselves one or more times until upload of the models and voices is complete. They then start properly.
To change the webhook configuration so that it fails open, and, when at least one Portieris pod is running, restore the webhook configuration so that it fails closed, complete the following steps:



1. Update MutatingWebhookConfiguration by running the following command.

kubectl edit MutatingWebhookConfiguration image-admission-config

Change failurePolicy to Ignore, save, and close.
2. Update ValidatingWebhookConfiguration by running the following command.

kubectl edit ValidatingWebhookConfiguration image-admission-config

Change failurePolicy to Ignore, save, and close.
3. Wait for some Portieris pods to start. If you want to check when the pods start, run the following command until you see the STATUS column for at least one pod is displaying Running:

kubectl get po -n ibm-system -l app=ibmcloud-image-enforcement
4. When at least one Portieris pod is running, update MutatingWebhookConfiguration by running the following command.

kubectl edit MutatingWebhookConfiguration image-admission-config

Change failurePolicy to Fail, save, and close.
5. Update ValidatingWebhookConfiguration by running the following command.

kubectl edit ValidatingWebhookConfiguration image-admission-config

Change failurePolicy to Fail, save, and close.