Skip to content

Commit

Permalink
Merge branch 'master' into suffix-formatter
Browse files Browse the repository at this point in the history
  • Loading branch information
kibanamachine authored Aug 30, 2021
2 parents 0a4217d + 079fc9a commit 10d7a94
Show file tree
Hide file tree
Showing 2,391 changed files with 9,551 additions and 43,583 deletions.
8 changes: 8 additions & 0 deletions .buildkite/pipelines/update_demo_env.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
steps:
- command: .buildkite/scripts/steps/demo_env/es_and_init.sh
label: Initialize Environment and Deploy ES

- command: .buildkite/scripts/steps/demo_env/kibana.sh
label: Build and Deploy Kibana
agents:
queue: c2-8
4 changes: 4 additions & 0 deletions .buildkite/scripts/steps/demo_env/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
ARG BASE_IMAGE
FROM ${BASE_IMAGE}
COPY ./* /var/lib/example_plugins
RUN find /var/lib/example_plugins/ -type f -name '*.zip' | xargs -I % /usr/share/kibana/bin/kibana-plugin install 'file://%'
8 changes: 8 additions & 0 deletions .buildkite/scripts/steps/demo_env/auth.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
#!/usr/bin/env bash

set -euo pipefail

echo '--- Auth and set up kubectl'

gcloud container clusters get-credentials demo-env --region us-central1 --project elastic-kibana-184716
kubectl config use-context gke_elastic-kibana-184716_us-central1_demo-env
9 changes: 9 additions & 0 deletions .buildkite/scripts/steps/demo_env/config.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/usr/bin/env bash

set -euo pipefail

DEPLOYMENT_VERSION=$(jq -r .version package.json)
export DEPLOYMENT_VERSION

export DEPLOYMENT_MINOR_VERSION="${DEPLOYMENT_VERSION%.*}"
export DEPLOYMENT_NAME="kb-${DEPLOYMENT_MINOR_VERSION/./-}"
39 changes: 39 additions & 0 deletions .buildkite/scripts/steps/demo_env/es_and_init.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
#!/usr/bin/env bash

set -euo pipefail

source "$(dirname "${0}")/config.sh"

"$(dirname "${0}")/auth.sh"

echo '--- Import and publish Elasticsearch image'

mkdir -p target

export ES_IMAGE="gcr.io/elastic-kibana-184716/demo/elasticsearch:$DEPLOYMENT_NAME-$(git rev-parse HEAD)"

DOCKER_EXPORT_URL=$(curl https://storage.googleapis.com/kibana-ci-es-snapshots-daily/$DEPLOYMENT_VERSION/manifest-latest-verified.json | jq -r '.archives | .[] | select(.platform=="docker") | .url')
curl "$DOCKER_EXPORT_URL" > target/elasticsearch-docker.tar.gz
docker load < target/elasticsearch-docker.tar.gz
docker tag "docker.elastic.co/elasticsearch/elasticsearch:$DEPLOYMENT_VERSION-SNAPSHOT" "$ES_IMAGE"
docker push "$ES_IMAGE"

echo '--- Prepare yaml'

TEMPLATE=$(envsubst < "$(dirname "${0}")/es_and_init.yml")

echo "$TEMPLATE"

cat << EOF | buildkite-agent annotate --style "info" --context demo-env-info
The demo environment can be accessed here, once Kibana and ES are running:
https://demo.kibana.dev/$DEPLOYMENT_MINOR_VERSION
Logs, etc can be found here:
https://console.cloud.google.com/kubernetes/workload?project=elastic-kibana-184716&pageState=(%22savedViews%22:(%22n%22:%5B%22${DEPLOYMENT_NAME}%22%5D,%22c%22:%5B%22gke%2Fus-central1%2Fdemo-env%22%5D))
EOF

echo '--- Deploy yaml'
echo "$TEMPLATE" | kubectl apply -f -
63 changes: 63 additions & 0 deletions .buildkite/scripts/steps/demo_env/es_and_init.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
kind: Namespace
apiVersion: v1
metadata:
name: $DEPLOYMENT_NAME
labels:
name: $DEPLOYMENT_NAME
---
apiVersion: elasticsearch.k8s.elastic.co/v1
kind: Elasticsearch
metadata:
name: $DEPLOYMENT_NAME
namespace: $DEPLOYMENT_NAME
spec:
version: $DEPLOYMENT_VERSION
image: $ES_IMAGE
nodeSets:
- name: default
count: 1
config:
node.store.allow_mmap: false
xpack.security.authc:
anonymous:
roles: viewer
authz_exception: true
podTemplate:
spec:
containers:
- name: elasticsearch
env:
- name: ES_JAVA_OPTS
value: -Xms2g -Xmx2g
resources:
requests:
memory: 4Gi
cpu: 2
limits:
memory: 4Gi
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: $DEPLOYMENT_NAME
namespace: $DEPLOYMENT_NAME
annotations:
kubernetes.io/ingress.class: 'nginx'
cert-manager.io/cluster-issuer: 'letsencrypt-prod'
nginx.ingress.kubernetes.io/rewrite-target: /$2
spec:
tls:
- hosts:
- demo.kibana.dev
secretName: tls-certificate
rules:
- host: demo.kibana.dev
http:
paths:
- path: /$DEPLOYMENT_MINOR_VERSION(/|$)(.*)
pathType: ImplementationSpecific
backend:
service:
name: $DEPLOYMENT_NAME-kb-http
port:
number: 5601
33 changes: 33 additions & 0 deletions .buildkite/scripts/steps/demo_env/kibana.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
#!/usr/bin/env bash

set -euo pipefail

export DISABLE_BOOTSTRAP_VALIDATION=true
export BUILD_TS_REFS_DISABLE=true

.buildkite/scripts/bootstrap.sh

source "$(dirname "${0}")/config.sh"

export KIBANA_IMAGE="gcr.io/elastic-kibana-184716/demo/kibana:$DEPLOYMENT_NAME-$(git rev-parse HEAD)"

echo '--- Build Kibana'
node scripts/build --debug --docker-images --example-plugins --skip-os-packages --skip-docker-ubi

echo '--- Build Docker image with example plugins'
cd target/example_plugins
BUILT_IMAGE="docker.elastic.co/kibana/kibana:$DEPLOYMENT_VERSION-SNAPSHOT"
docker build --build-arg BASE_IMAGE="$BUILT_IMAGE" -t "$KIBANA_IMAGE" -f "$KIBANA_DIR/.buildkite/scripts/steps/demo_env/Dockerfile" .
docker push "$KIBANA_IMAGE"
cd -

"$(dirname "${0}")/auth.sh"

echo '--- Prepare yaml'

TEMPLATE=$(envsubst < "$(dirname "${0}")/kibana.yml")

echo "$TEMPLATE"

echo '--- Deploy yaml'
echo "$TEMPLATE" | kubectl apply -f -
39 changes: 39 additions & 0 deletions .buildkite/scripts/steps/demo_env/kibana.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
apiVersion: kibana.k8s.elastic.co/v1
kind: Kibana
metadata:
name: $DEPLOYMENT_NAME
namespace: $DEPLOYMENT_NAME
spec:
version: $DEPLOYMENT_VERSION
image: $KIBANA_IMAGE
count: 1
elasticsearchRef:
name: $DEPLOYMENT_NAME
http:
tls:
selfSignedCertificate:
disabled: true
config:
server:
basePath: '/$DEPLOYMENT_MINOR_VERSION'
publicBaseUrl: 'https://demo.kibana.dev/$DEPLOYMENT_MINOR_VERSION'
xpack.security.authc.providers:
basic.basic1:
order: 0
anonymous.anonymous1:
order: 1
credentials: 'elasticsearch_anonymous_user'
podTemplate:
spec:
containers:
- name: kibana
env:
- name: NODE_OPTIONS
value: '--max-old-space-size=2048'
resources:
requests:
memory: 1Gi
cpu: 0.5
limits:
memory: 2.5Gi
cpu: 2
4 changes: 3 additions & 1 deletion docs/api/actions-and-connectors/get_all.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,7 @@ The API returns the following:
"connector_type_id": ".email",
"name": "email: preconfigured-mail-connector",
"is_preconfigured": true,
"referenced_by_count": 1
"referenced_by_count": 0 <1>
},
{
"id": "c55b6eb0-6bad-11eb-9f3b-611eebc6c3ad",
Expand All @@ -61,3 +61,5 @@ The API returns the following:
}
]
--------------------------------------------------

<1> `referenced_by_count` - The number of saved-objects referencing this connector. This value is not calculated if `is_preconfigured: true`.
10 changes: 10 additions & 0 deletions docs/api/saved-objects/bulk_get.asciidoc
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,16 @@ experimental[] Retrieve multiple {kib} saved objects by ID.
`fields`::
(Optional, array) The fields to return in the `attributes` key of the object response.

`namespaces`::
(Optional, string array) Identifiers for the <<xpack-spaces,spaces>> in which to search for this object. If this is provided, the object
is searched for only in the explicitly defined spaces. If this is not provided, the object is searched for in the current space (default
behavior).
* For shareable object types (registered with `namespaceType: 'multiple'`): this option can be used to specify one or more spaces, including
the "All spaces" identifier (`'*'`).
* For isolated object types (registered with `namespaceType: 'single'` or `namespaceType: 'multiple-isolated'`): this option can only be
used to specify a single space, and the "All spaces" identifier (`'*'`) is not allowed.
* For global object types (registered with `namespaceType: 'agnostic'`): this option cannot be used.

[[saved-objects-api-bulk-get-response-body]]
==== Response body

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -17,5 +17,6 @@ export interface SavedObjectsBulkGetObject
| --- | --- | --- |
| [fields](./kibana-plugin-core-server.savedobjectsbulkgetobject.fields.md) | <code>string[]</code> | SavedObject fields to include in the response |
| [id](./kibana-plugin-core-server.savedobjectsbulkgetobject.id.md) | <code>string</code> | |
| [namespaces](./kibana-plugin-core-server.savedobjectsbulkgetobject.namespaces.md) | <code>string[]</code> | Optional namespace(s) for the object to be retrieved in. If this is defined, it will supersede the namespace ID that is in the top-level options.<!-- -->\* For shareable object types (registered with <code>namespaceType: 'multiple'</code>): this option can be used to specify one or more spaces, including the "All spaces" identifier (<code>'*'</code>). \* For isolated object types (registered with <code>namespaceType: 'single'</code> or <code>namespaceType: 'multiple-isolated'</code>): this option can only be used to specify a single space, and the "All spaces" identifier (<code>'*'</code>) is not allowed. \* For global object types (registered with <code>namespaceType: 'agnostic'</code>): this option cannot be used. |
| [type](./kibana-plugin-core-server.savedobjectsbulkgetobject.type.md) | <code>string</code> | |

Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
<!-- Do not edit this file. It is automatically generated by API Documenter. -->

[Home](./index.md) &gt; [kibana-plugin-core-server](./kibana-plugin-core-server.md) &gt; [SavedObjectsBulkGetObject](./kibana-plugin-core-server.savedobjectsbulkgetobject.md) &gt; [namespaces](./kibana-plugin-core-server.savedobjectsbulkgetobject.namespaces.md)

## SavedObjectsBulkGetObject.namespaces property

Optional namespace(s) for the object to be retrieved in. If this is defined, it will supersede the namespace ID that is in the top-level options.

\* For shareable object types (registered with `namespaceType: 'multiple'`<!-- -->): this option can be used to specify one or more spaces, including the "All spaces" identifier (`'*'`<!-- -->). \* For isolated object types (registered with `namespaceType: 'single'` or `namespaceType: 'multiple-isolated'`<!-- -->): this option can only be used to specify a single space, and the "All spaces" identifier (`'*'`<!-- -->) is not allowed. \* For global object types (registered with `namespaceType: 'agnostic'`<!-- -->): this option cannot be used.

<b>Signature:</b>

```typescript
namespaces?: string[];
```
12 changes: 0 additions & 12 deletions docs/development/plugins/data/public/index.md

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

This file was deleted.

Loading

0 comments on commit 10d7a94

Please sign in to comment.