Failed to pull image, unauthorized: authentication required - cloud-automation-manager

Trying to deploy CAM chart version 2101 from ICP 2101. Deploy fails with the error:
Failed to pull image
“mycluster.icp:8500/default/orpheus-iaas:2.1.0.1_121317”: rpc error:
code = Unknown desc = Error response from daemon: Get
https://mycluster.icp:8500/v2/default/orpheus-iaas/manifests/2.1.0.1_121317:
unauthorized: authentication required

As Scott mentioned, updating the image scope to global is the correct answer. This can be accomplished with a single command:
root#icp-master-1:~# kubectl get image -n=<namespace> -o yaml | sed 's/scope: namespace/scope: global/g' | kubectl replace -f -
image "cam-broker" replaced
image "cam-busybox" replaced
image "cam-mongo" replaced
image "cam-orchestration" replaced
image "cam-portal-api" replaced
image "cam-portal-ui" replaced
image "cam-redis" replaced
image "cam-service-composer-api" replaced
image "cam-service-composer-ui" replaced
image "orpheus-iaas" replaced
image "orpheus-proxy" replaced
image "orpheus-tenant-mgmt" replaced
image "orpheus-ui-basic" replaced
image "orpheus-ui-connections" replaced
image "orpheus-ui-instances" replaced
image "orpheus-ui-templates" replaced
image "provider-terraform-local" replaced

When loading the CAM PPA package into ICP, I did not include the --namespace services as indicated in the CAM installation topic: https://www.ibm.com/support/knowledgecenter/SS2L37/cam_installing_cam.html
I was able to use the workaround of changing all of the CAM images scope to global:
https://www.ibm.com/support/knowledgecenter/en/SSBS6K_2.1.0/manage_images/change_scope.html
I deleted the existing CAM deploy and then attempted the deploy again successfully.

Related

Empty gnocchi metric list in Devstack

I installed devstack and ceilometer by adding the following lines in the local.conf file:
enable_plugin ceilometer https://opendev.org/openstack/ceilometer.git
CEILOMETER_BACKEND=gnocchi
Devstack works correctly (I am able to create images, instances, etc.). The problem is that I cannot visualize the metrics and resources using "gnocchi metric list" and "gnocchi resource list". No errors but the body response is empty.
"ceilometer-upgrade" gives the following error:
DEBUG ceilometer.cmd.storage Upgrade Gnocchi resource types upgrade /opt/stack/ceilometer/ceilometer/cmd/storage.py:42
While "ceilometer-polling" prints "The resource could not be found".
How can I resolve this issue? Thanks!

How to fix "Cannot find a valid font for the family Sans' while adding text on image using react-native-ffmpeg

I am trying to add text on image using the code below
RNFFmpeg
.execute(`-y -i ${input} -vf "drawtext=text='Hello World':fontcolor=white:fontsize=75:x=0:y=0" ${output}`);
I am not using any custom font but still get this error.
Error:
[Parsed_drawtext_0 # 0x7f87a1ce40] Cannot find a valid font for the family Sans
index.js:115 [AVFilterGraph # 0x7f6765e760] Error initializing filter 'drawtext'
index.js:115 [AVFilterGraph # 0x7f6765e760] with args 'text=Hello World:fontcolor=white:fontsize=75:x=0:y=0'
index.js:115 [AVFilterGraph # 0x7f6765e760]
index.js:115 Error reinitializing filters!
index.js:115 Failed to inject frame into filter network: No such file or directory
index.js:115 Error while processing the decoded data for stream #0:0
Note:
I also tried using a custom font but not able to do it.
When I use RNFFmpegConfig.setFontDirectory('../../assets/fonts') function and with it the following code to add text on image
RNFFmpeg
.execute(`-y -i ${input} -vf "drawtext=text='Hello World':fontfile='../../assets/fonts/MyFont.ttf':fontcolor=white:fontsize=75:x=0:y=0" ${output}`);
It gives me the same error.
How can I fix this issue.
according to this
https://github.com/tanersener/ffmpeg-kit/wiki/Tips
you should registering the fonts under a directory using the FFmpegKitConfig.setFontDirectory methods or by specifying your own fontconfig configuration using FFmpegKitConfig.setFontconfigConfigurationPath
System fonts on Android are stored under the /system/fonts folder
and on iOS are stored under the /System/Library/Fonts

How to receive tile data from ClusterBuster vector tile server in the sample example?

Summary
Seems the guys did a great work with the built-in filtering, clustering and caching on the ClusterBuster vector tile server.
I'm really excited about this project that looks very promising and i'm eager to try it!
I'm working on a project on plotting Deck.gl layers (MVTLayer) on top of Google Maps from a vector tile server through their integration.
I want to try to integrate and to serve from ClusterBuster server some clustered points saved in PostGIS.
Expected result:
I want to receive tile data from ClusterBuster vector tile server like in their provided sample example.
Actual result:
Provided sample example not working (points not showing on map, neither on Mapbox, nor on Google Maps with Deck.gl).
My attempts
I tried building and running the example provided but somehow, i'm not able to do this.
I ran the provided express server clusterbuster/example/express.ts and for frontend tried with the provided mapbox example from clusterbuster/example/mapbox.html (with my mapbox token) but nothing appears on mapbox map (nor on Google maps with my Deck.gl example).
As stated in the clusterbuster/example/readme.md i created an .env file with PostGIS connections settings.
After running the following commands:
yarn
yarn start
i get this output:
C:\zFVStuff\Google Maps - Deck.gl\_Servers\ClusterBuster\clusterbuster-master> yarn start
yarn run v1.22.4
$ yarn build && ts-node example/express.ts
$ rollup --config rollup.config.js
./lib/index.ts → dist/index.d.ts...
created dist/index.d.ts in 5.7s
./lib/index.ts → dist/index.js...
created dist/index.js in 5.1s
attempting to create supporting SQL functions
failure in creating First SQL function
failure in creating TileBBox SQL function
failure in creating TileDoubleBBox SQL function
Example app listening on port 3005!
send3663284b-0e58-4587-af82-b35604a99303: 4.964ms
3663284b-0e58-4587-af82-b35604a99303: 817.819ms
sendd0bdd671-1f47-4b40-84ba-2fed6adfd045: 3.451ms
d0bdd671-1f47-4b40-84ba-2fed6adfd045: 1276.588ms
sendcd36f672-4c4b-4a95-b772-7584e6eb8c55: 1.349ms
cd36f672-4c4b-4a95-b772-7584e6eb8c55: 1754.146ms
The requests seems to be ok, returning status 200 but tile data from ClusterBuster server is undefined nothing appears on the map (neither your Mapbox, or my Google Maps).
Also, it's curious that all tile responses seems to have the same size 216 B.
The data was imported ok in the PostGIS database.
Result is undefined after debugging the express.ts server file with VSCode Javascript Debug Terminal and starting it with the command ts-node .\example\express.ts.
In the Chrome network tab, in none of the sub-tabs Preview or Response i can't see any data.
I also tried logging the result tile in the express server in the success function,
server({
...//excluded for visibility
}).then(result => {
...//excluded for visibility
console.log(result)
res.status(200).send(result);
})
and below is the output, i get undefined:
Any help or advice is really appreciate! Thank you in advance!
After enabling debug in the TileServer configuration (with debug: true), i noticed 2 errors:
SELECT ST_AsMVT(tile, 'points', 4096, 'geom') AS mvt FROM tile
{
e: error: password authentication failed for user "userXYZ"
...
SELECT ST_AsMVT(tile, 'points', 4096, 'geom') AS mvt FROM tile
{
e: Error: read ECONNRESET
at TCP.onStreamRead (internal/stream_base_commons.js:205:27) {
...
Initially I ran from the root of clusterbuster with ts-node .\example\express.ts or with yarn start (that underneath uses the same and it tries to connect with my user instead of .env config file)
After running ts-node express.ts from the example folder it took into account the .env config file with postgres user instead of my user. Now the tile data from the server is returned ok and the example works at expected.
Many thanks to the contributor cosmin-petrescu that helped me.
Entire thread can be seen here on github.

Logo not running in my emulator and devices

11:01:29: Failed building JavaScript bundle
11:01:29: Unable to resolve ./app/img/grangologo.png" from ".//App.js: could not resolve/home/gokul/React/Grango/app/img/grangologo.png' as a file nor as a folder","name":"UnableToResolveError","type":"UnableToResolveError","errors":[{}]},"type":"bundling_error"}"
you'r path to the image is wrong, try to use some console.log's to check yourself if the image was imported.
(p.s you could avoid all of it by using proper editor)

Rails asset pipeline can't find one certain image

I have a certain image called ui-icons_ffffff_256x240.png. In production it can be found, among other places, in public/assets/images/ui-icons_ffffff_256x240.png.
When I try to view this image in production, I get the following error:
ActionController::RoutingError (No route matches [GET] "/assets/images/ui-icons_ffffff_256x240.png"):
I find this extremely odd since the image most certainly is there:
$ find . -name ui-icons_ffffff_256x240.png
./vendor/assets/stylesheets/jquery-ui/images/ui-icons_ffffff_256x240.png
./public/assets/jquery-ui/images/ui-icons_ffffff_256x240.png
./public/assets/images/ui-icons_ffffff_256x240.png
All the other images in my app work fine and have been forever. I recently upgraded my version of jQuery UI, though, and this one particular image doesn't want to work. (I think it's the only jQuery UI image I'm actually using.)
I'm on Rails 3.2.1. What could be the issue?
Your js plugin requests the image with invalid asset url.
The asset image can be accessed by
/assets/ui-icons_ffffff_256x240.png
But the requested url is
/assets/images/ui-icons_ffffff_256x240.png
So in your javascript or stylesheet you need to correct asset url manually.