Open Data Cube installation - satellite-image

i am trying to install Open Data Cube as per the documentation: https://opendatacube.readthedocs.io/en/latest/installation/setup/windows.html , but i am getting the following errors/failures that i can not seem to fix
FAILED tests/test_3d.py::test_extra_dimensions - AssertionError: assert 'ExtraDimensi...40 145 150} )' == 'ExtraDimensi...40 145 150} )'
FAILED tests/test_driver.py::test_index_drivers - AssertionError: assert 'null' in ['default']
FAILED tests/drivers/test_rio_reader.py::test_rd_internals_bidx - rasterio.errors.RasterioIOError: 'NETCDF:"\\C:\Users\Iani\datacube-core\tests\data\multi_doc.nc":a' does not exist in the file system
FAILED integration_tests/index/test_null_index.py::test_null_product_resource - RuntimeError: No index driver found for 'null'. 1 available: default
Also, when i try to run the command: datacube -v system init, i get the following error:
Error: No datacube config found
The datacube config was created like it was said in the documentation. Do you guys have any idea or recommandations on these?
Thank you

Related

Error when running near indexer localnet, fail to generate config.json

So I'm trying to run the indexer on localnet following the official tutorial https://docs.near.org/docs/tutorials/near-indexer
However when I run cargo run -- init to generate the localnet json config I get this error
Finished dev [unoptimized + debuginfo] target(s) in 17.62s
Running `target/debug/example-indexer init`
thread 'main' panicked at 'Failed to deserialize config: Error("expected value", line: 1, column: 1)', /home/francois/.cargo/git/checkouts/nearcore-5bf7818cf2261fd0/a44be20/nearcore/src/config.rs:499:39
note: run with `RUST_BACKTRACE=1` environment variable to display a backtrace
At some point it seems the json is not created or not created properly I guess, the function crashing in config.rf line 499 is
impl From<&str> for Config {
fn from(content: &str) -> Self {
serde_json::from_str(content).expect("Failed to deserialize config")
}
}
It's quite difficult to debug since cargo run -- init is using some inner near function (also I'm new to rust).
the config.json file is created but it seems the permission are not set properly by the script, the content of config.json is
"<?xml version="1.0" encoding="UTF-8"?>
<Error><Code>AccessDenied</Code><Message>Access Denied</Message> ... "
If anyone from the community has encountered this problem or has a hint it would be great!! thanks a lot !
In the tutorial you referenced, it mentions a similar error, and suggests the following:
Open your config.json located in the .near folder in the root of your home directory. ( ~/.near/config.json )
In this file, locate: "tracked_shards": [] and change the value to [0].
Save the file and try running your indexer again.
So I had the wrong config with download_config: false,
It should be download_config: false, for the localnet use

How to resolve 'apparmor_parser: Unable to replace "docker-default"' error?

When i was setting up development kit for a project using docker, i received the below error when i executed the docker-compose up -d command
Starting cc-buildkit-docker_mysql_1 ... error
Starting cc-buildkit-docker_maildev_1 ...
ERROR: for cc-buildkit-docker_mysql_1 Cannot start service mysql: AppArmor enabled on system but the docker-default profile could not be loaded: running `/sbin/apparmor_parser apparmor_parser -Kr /var/lib/docker/tmp/docker-default736988292` failed with output: apparmor_parser: Unable to replace "docker-default". Permission denied; attempted to load a profile while confined?
Starting cc-buildkit-docker_maildev_1 ... error
How should i resolve this ? Thanks in advance

Weird kibana error - invalid code -- missing end-of-block

I just started seeing this error on my kibana server :
read err { Error: invalid code -- missing end-of-block at
InflateRaw.zlibOnError (zlib.js:153:15) errno: -3, code:
'Z_DATA_ERROR' }
There is no helpful information in the corresponding logs :
{"type":"log","#timestamp":"2019-01-22T13:46:34Z","tags":
["license","info","xpack"],"pid":17310,"message":"Imported license
information from Elasticsearch for the [monitoring] cluster: mode:
basic | status: active"}
However, in the browser there is an error: Kibana server is not ready yet.
I have no idea how to tackle this!
UPDATE
I have seen additional error in elasticsearch logs that might suggest the cause of failure :
[2019-01-24T11:15:47,216][INFO ][o.e.c.m.MetaDataIndexTemplateService] [cloudraid01] adding template [.management-beats] for index patterns [.management-beats]
This seems to be related to metricbeats.

How do I configure SaltStack to transfer a file (or install a package) for the first time?

I am running two instances of RedHat. I have SaltMaster installed on one machine and SaltMinion installed on another. I am using a free version of Salt. I want to test SaltStack to do a basic configuration management task. If it can transfer a file from SaltMaster to SaltMinion, that would be great. If it can install Apache web server on SaltMinion, that would be great. Either task will help me learn. My learning goal is semi-flexible.
I can use salt '*' test.ping. The response is True. I tried this command: salt '*' state.apply
I got this error:
> hostname.fqdn:
> Data failed to compile:
> ----------
> No matching salt environment for environment 'qa' found
> ----------
> No matching sls found for 'qa1' in env 'qa'
> ----------
> No matching sls found for 'base1' in env 'base'
> ----------
> No matching salt environment for environment 'dev' found
> ----------
> Specified SLS base1 in saltenv dev is not available on the salt master or through a configured fileserver
I modified the /etc/salt/master file. I uncommented these lines:
fileserver_backend:
- git
- roots
I tried this command again: salt '*' state.apply
I received this error:
> [ERROR ] Error parsing configuration file: /etc/salt/master -
> expected '<document start>', but found '<block mapping start>' in
> "<string>", line 547, column 1:
> fileserver_backend:
> ^ [ERROR ] Error parsing configuration file: /etc/salt/master - expected '<document start>', but found '<block mapping start>' in
> "<string>", line 547, column 1:
> fileserver_backend:
> ^
I have been following these directions here:
https://docs.saltstack.com/en/latest/topics/tutorials/states_pt1.html
I created a webserver.sls file.
I inserted these lines as the content:
apache: # ID declaration
pkg: # state declaration
- installed # function declaration
I do not see how the three lines in the directions above would be enough to configure SaltStack to work. Where would the apache installation media need to be? Where would the transfer happen from? Am I supposed to download the media to SaltMaster? I would assume so. But where would I put it? I have a satellite server for yum commands to work.
Alternatively, how do I get SaltStack to transfer a file from SaltMaster to SaltMinion?
The first error ([...]No matching sls found for 'qa1' in env 'qa'[...]) indicates that you have configured a lot of different environments (file_roots), which are not present on your master's filesystem. Your approach to solve this goes in the correct direction, but leads to this error:
[ERROR ] Error parsing configuration file: /etc/salt/master - expected '', but found '' in "", line 547, column 1: fileserver_backend: ^ [ERROR ] Error parsing configuration file: /etc/salt/master - expected '', but found '' in "", line 547, column 1: fileserver_backend: ^
You should no longer be able to test.ping your minion, as the salt master should not run anymore, does it? To solve it just read the error message. It tells you with which point in your salt master configuration file salt is unhappy.
The fileserver_backend configures which types of backend should be available. You should check the file_roots configuration to actually define which roots are available. Roots refer to salt states folders in your filesystem.
A very simple config might look like that:
file_roots:
base:
- /srv/salt
It assumes that /srv/salt is the root of your state tree - which effectively means, that your webserver.sls should be located in this folder.
Your webserver.sls looks promising - it should install apache2 on a minion, when you apply it.
Managing configuration files on the master and transferring them to the minions is something salt can easily achieve. A simple state might look like:
/etc/myawesomeconfigurationfile.conf:
file.managed:
source: salt://myawesomefile # refers to /srv/salt/myawesomefile
user: root
group: root
mode: 640
You also asked for media files that you want to manage. If you talk about application related data it is not a good idea to use salt to move them around. IMO other approaches like NFS, GlusterFS or anything else that decouples user content from your application would be a better approach.

how to set a grails 3 app to use a root context path?

I'm trying to set a root context path for my application in `conf/application.yml' like so:
server:
'context-path': '/'
However, when trying to start grails> run-app, I get the following exception:
FAILURE: Build failed with an exception.
* What went wrong:
Execution failed for task ':bootRun'.
> Process 'command '/Library/Java/JavaVirtualMachines/jdk1.8.0_20.jdk/Contents/Home/bin/java'' finished with non-zero exit value 1
From Grails 3.0.3, the expected configuration key is contextPath, camel case and not hyphenated. So the right setting in your application.yml is:
server:
contextPath: '/my-path'
Or, if you're using application.groovy:
server.contextPath='/my-path'
I should have paid more attention to the error log output from run-app. The correct setting is:
server:
'context-path': ''
>= Grails 3.0.3:
server:
contextPath: ''

Resources