splash cleanup

This commit is contained in:
Diamantis Tziotzios 2024-06-19 15:57:08 +03:00
parent a2a7875be8
commit b9d2c00c88
223 changed files with 15 additions and 65740 deletions
ELK.Docker
dmp-frontend/src

View File

@ -1,3 +0,0 @@
ELK_VERSION=7.6.0
# Leave blank to use the "basic" image flavours, which include X-Pack.
# see https://www.elastic.co/subscriptions

View File

@ -1,2 +0,0 @@
# Declare files that will always have LF line endings on checkout.
*.sh text eol=lf

View File

@ -1,21 +0,0 @@
The MIT License (MIT)
Copyright (c) 2015 Anthony Lapenna
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.

View File

@ -1,4 +0,0 @@
Init default users and retrieve passwords
1) connect to elasticsearch container with docker exec -it elastichsearch /bin/bash
2) run ./bin/elasticsearch-setup-passwords auto >./data/passwords.txt (press y and enter when the console shows nothing)

View File

@ -1,87 +0,0 @@
version: '2.4'
services:
elasticsearch:
user: 1002:1002 #develuser
restart: unless-stopped
mem_limit: 2048m
environment:
- cluster.name=open-dmp-cluster
- bootstrap.memory_lock=true
- "ES_JAVA_OPTS=-Xmx1024m -Xms1024m"
- xpack.license.self_generated.type=basic
- xpack.monitoring.collection.enabled=true
- xpack.security.enabled=true
ulimits:
nproc: 65535
memlock:
soft: -1
hard: -1
volumes:
- ./shared/config-elk/elasticsearch/config/log4j2.properties:/usr/share/elasticsearch/config/log4j2.properties:ro
- ./shared/config-elk/elasticsearch/config/elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml:ro
- ./shared/data-elk/elasticsearch-01-data:/usr/share/elasticsearch/data
- ./shared/data-elk/elasticsearch-01-log:/usr/share/elasticsearch/logs
#ports:
# - 51056:9200
# - 51057:9300
ports:
- "9200:9200"
expose:
- "9300"
networks:
open-dmp-elk-network:
logstash:
# user: 1002:1002 #develuser
volumes:
- ./shared/config-elk/logstash/config/logstash.yml:/usr/share/logstash/config/logstash.yml:ro
- ./shared/config-elk/logstash/config/pipelines.yml:/usr/share/logstash/config/pipelines.yml:ro
- ./shared/config-elk/logstash/config/log4j2.properties:/usr/share/logstash/config/log4j2.properties:ro
- ./shared/config-elk/logstash/pipeline:/usr/share/logstash/pipeline:ro
- ./shared/config-elk/logstash/logstash/templates:/usr/share/logstash/templates
- ./shared/data-elk/logstash-log:/usr/share/logstash/logs
- ./shared/data-elk/logstash-queue:/usr/share/logstash/queue
- ./shared/data-elk/logstash-dead_letter_queue:/usr/share/logstash/dead_letter_queue
expose:
- "31311"
- "31312"
restart: on-failure
mem_limit: 2048m
environment:
- LS_JAVA_OPTS=-Xmx1024m -Xms1024m
- xpack.license.self_generated.type=basic
- xpack.security.enabled=true
networks:
open-dmp-elk-network:
kibana:
# user: 1002:1002 #develuser
mem_limit: 512m
environment:
- xpack.license.self_generated.type=basic
- xpack.security.enabled=true
volumes:
- ./shared/config-elk/kibana/config:/usr/share/kibana/config:ro
#- ./shared/config-elk/kibana/certificates:/usr/share/kibana/certificates
restart: unless-stopped
ports:
- "51058:5601"
networks:
- open-dmp-elk-network
filebeat:
restart: unless-stopped
mem_limit: 256m
#command: [ "-e=false" ] # to overwrite the -e that disables logging to file!
volumes:
- ./shared/config-elk/filebeat/config/filebeat.yml:/usr/share/filebeat/filebeat.yml:ro
- ~/openDMP/logs:/usr/share/filebeat/log_data/dmp/
- ./shared/data-elk/filebeat-log:/usr/share/filebeat/logs
- ./shared/data-elk/filebeat-data:/usr/share/filebeat/data #For windows if we mount the data directory we get "Writing of registry returned error: sync /usr/share/filebeat/data/registry/filebeat: invalid argument."
networks:
- open-dmp-elk-network
networks:
open-dmp-elk-network:

View File

@ -1,43 +0,0 @@
version: '2.4'
services:
elasticsearch:
image: ${DOCKER_REGISTRY}elasticsearch
container_name: elasticsearch
build:
context: elasticsearch/
args:
ELK_VERSION: $ELK_VERSION
healthcheck:
# test: curl --cacert /usr/share/elasticsearch/config/certificates/ca/ca.crt -s https://localhost:9200 >/dev/null; if [[ $$? == 52 ]]; then echo 0; else echo 1; fi
interval: 30s
timeout: 10s
retries: 5
logstash:
image: ${DOCKER_REGISTRY}logstash
container_name: logstash
build:
context: logstash/
args:
ELK_VERSION: $ELK_VERSION
depends_on:
- elasticsearch
kibana:
image: ${DOCKER_REGISTRY}kibana
build:
context: kibana/
args:
ELK_VERSION: $ELK_VERSION
depends_on:
- elasticsearch
filebeat:
image: ${DOCKER_REGISTRY}filebeat
build:
context: filebeat/
args:
ELK_VERSION: $ELK_VERSION
depends_on:
- logstash

View File

@ -1,22 +0,0 @@
ARG ELK_VERSION
# https://github.com/elastic/elasticsearch-docker
FROM docker.elastic.co/elasticsearch/elasticsearch:${ELK_VERSION}
RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-icu && \
/usr/share/elasticsearch/bin/elasticsearch-plugin install analysis-phonetic
RUN groupmod -g 1002 elasticsearch
RUN usermod -u 1002 -g 1002 elasticsearch
RUN chown -R elasticsearch /usr/share/elasticsearch
RUN sed -i -e 's/--userspec=1000/--userspec=1002/g' \
-e 's/UID 1000/UID 1002/' \
-e 's/chown -R 1000/chown -R 1002/' /usr/local/bin/docker-entrypoint.sh
RUN chown elasticsearch /usr/local/bin/docker-entrypoint.sh
ENV JAVA_HOME /usr/share/elasticsearch/jdk
# RUN mkdir /usr/share/elasticsearch/custom-plugins
# COPY plugins/elasticsearch-analysis-greeklish-7.5.1.zip /usr/share/elasticsearch/custom-plugins/elasticsearch-analysis-greeklish-7.5.1.zip
# RUN /usr/share/elasticsearch/bin/elasticsearch-plugin install file:///usr/share/elasticsearch/custom-plugins/elasticsearch-analysis-greeklish-7.5.1.zip

View File

@ -1,15 +0,0 @@
ARG ELK_VERSION
FROM docker.elastic.co/beats/filebeat:${ELK_VERSION}
# USER root
# RUN groupmod -g 1002 filebeat
# RUN usermod -u 1002 -g 1002 filebeat
# RUN chown -R filebeat /usr/share/filebeat
# RUN sed -i -e 's/--userspec=1000/--userspec=1002/g' \
# -e 's/UID 1000/UID 1002/' \
# -e 's/chown -R 1000/chown -R 1002/' /usr/local/bin/docker-entrypoint
# RUN chown filebeat /usr/local/bin/docker-entrypoint
# USER 1002:1002

View File

@ -1,15 +0,0 @@
ARG ELK_VERSION
# https://github.com/elastic/kibana-docker
FROM docker.elastic.co/kibana/kibana:${ELK_VERSION}
# USER root
# RUN groupmod -g 1002 kibana
# RUN usermod -g 1002 root
# RUN usermod -u 1002 -g 1002 kibana
# RUN chown -R kibana /usr/share/kibana
# USER 1002:1002
# Add your kibana plugins setup here
# Example: RUN kibana-plugin install <name|url>

View File

@ -1,20 +0,0 @@
ARG ELK_VERSION
# https://github.com/elastic/logstash-docker
FROM docker.elastic.co/logstash/logstash:${ELK_VERSION}
# USER root
# RUN groupmod -g 1002 logstash
# RUN usermod -u 1002 -g 1002 logstash
# RUN chown -R logstash /usr/share/logstash
# RUN sed -i -e 's/--userspec=1000/--userspec=1002/g' \
# -e 's/UID 1000/UID 1002/' \
# -e 's/chown -R 1000/chown -R 1002/' /usr/local/bin/docker-entrypoint
# RUN chown logstash /usr/local/bin/docker-entrypoint
# USER 1002:1002
# Add your logstash plugins setup here
# Example: RUN logstash-plugin install logstash-filter-json
RUN logstash-plugin update logstash-input-beats
RUN logstash-plugin update logstash-filter-grok

View File

@ -1,3 +0,0 @@
TAG=6.3.1
ELASTIC_VERSION=6.3.1
ELASTIC_PASSWORD=changeme

View File

@ -1 +0,0 @@
**/*~

View File

@ -1,7 +0,0 @@
---
language: python
python: ['3.5']
script: make
sudo: required
services: ['docker']

View File

@ -1,201 +0,0 @@
Apache License
Version 2.0, January 2004
http://www.apache.org/licenses/
TERMS AND CONDITIONS FOR USE, REPRODUCTION, AND DISTRIBUTION
1. Definitions.
"License" shall mean the terms and conditions for use, reproduction,
and distribution as defined by Sections 1 through 9 of this document.
"Licensor" shall mean the copyright owner or entity authorized by
the copyright owner that is granting the License.
"Legal Entity" shall mean the union of the acting entity and all
other entities that control, are controlled by, or are under common
control with that entity. For the purposes of this definition,
"control" means (i) the power, direct or indirect, to cause the
direction or management of such entity, whether by contract or
otherwise, or (ii) ownership of fifty percent (50%) or more of the
outstanding shares, or (iii) beneficial ownership of such entity.
"You" (or "Your") shall mean an individual or Legal Entity
exercising permissions granted by this License.
"Source" form shall mean the preferred form for making modifications,
including but not limited to software source code, documentation
source, and configuration files.
"Object" form shall mean any form resulting from mechanical
transformation or translation of a Source form, including but
not limited to compiled object code, generated documentation,
and conversions to other media types.
"Work" shall mean the work of authorship, whether in Source or
Object form, made available under the License, as indicated by a
copyright notice that is included in or attached to the work
(an example is provided in the Appendix below).
"Derivative Works" shall mean any work, whether in Source or Object
form, that is based on (or derived from) the Work and for which the
editorial revisions, annotations, elaborations, or other modifications
represent, as a whole, an original work of authorship. For the purposes
of this License, Derivative Works shall not include works that remain
separable from, or merely link (or bind by name) to the interfaces of,
the Work and Derivative Works thereof.
"Contribution" shall mean any work of authorship, including
the original version of the Work and any modifications or additions
to that Work or Derivative Works thereof, that is intentionally
submitted to Licensor for inclusion in the Work by the copyright owner
or by an individual or Legal Entity authorized to submit on behalf of
the copyright owner. For the purposes of this definition, "submitted"
means any form of electronic, verbal, or written communication sent
to the Licensor or its representatives, including but not limited to
communication on electronic mailing lists, source code control systems,
and issue tracking systems that are managed by, or on behalf of, the
Licensor for the purpose of discussing and improving the Work, but
excluding communication that is conspicuously marked or otherwise
designated in writing by the copyright owner as "Not a Contribution."
"Contributor" shall mean Licensor and any individual or Legal Entity
on behalf of whom a Contribution has been received by Licensor and
subsequently incorporated within the Work.
2. Grant of Copyright License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
copyright license to reproduce, prepare Derivative Works of,
publicly display, publicly perform, sublicense, and distribute the
Work and such Derivative Works in Source or Object form.
3. Grant of Patent License. Subject to the terms and conditions of
this License, each Contributor hereby grants to You a perpetual,
worldwide, non-exclusive, no-charge, royalty-free, irrevocable
(except as stated in this section) patent license to make, have made,
use, offer to sell, sell, import, and otherwise transfer the Work,
where such license applies only to those patent claims licensable
by such Contributor that are necessarily infringed by their
Contribution(s) alone or by combination of their Contribution(s)
with the Work to which such Contribution(s) was submitted. If You
institute patent litigation against any entity (including a
cross-claim or counterclaim in a lawsuit) alleging that the Work
or a Contribution incorporated within the Work constitutes direct
or contributory patent infringement, then any patent licenses
granted to You under this License for that Work shall terminate
as of the date such litigation is filed.
4. Redistribution. You may reproduce and distribute copies of the
Work or Derivative Works thereof in any medium, with or without
modifications, and in Source or Object form, provided that You
meet the following conditions:
(a) You must give any other recipients of the Work or
Derivative Works a copy of this License; and
(b) You must cause any modified files to carry prominent notices
stating that You changed the files; and
(c) You must retain, in the Source form of any Derivative Works
that You distribute, all copyright, patent, trademark, and
attribution notices from the Source form of the Work,
excluding those notices that do not pertain to any part of
the Derivative Works; and
(d) If the Work includes a "NOTICE" text file as part of its
distribution, then any Derivative Works that You distribute must
include a readable copy of the attribution notices contained
within such NOTICE file, excluding those notices that do not
pertain to any part of the Derivative Works, in at least one
of the following places: within a NOTICE text file distributed
as part of the Derivative Works; within the Source form or
documentation, if provided along with the Derivative Works; or,
within a display generated by the Derivative Works, if and
wherever such third-party notices normally appear. The contents
of the NOTICE file are for informational purposes only and
do not modify the License. You may add Your own attribution
notices within Derivative Works that You distribute, alongside
or as an addendum to the NOTICE text from the Work, provided
that such additional attribution notices cannot be construed
as modifying the License.
You may add Your own copyright statement to Your modifications and
may provide additional or different license terms and conditions
for use, reproduction, or distribution of Your modifications, or
for any such Derivative Works as a whole, provided Your use,
reproduction, and distribution of the Work otherwise complies with
the conditions stated in this License.
5. Submission of Contributions. Unless You explicitly state otherwise,
any Contribution intentionally submitted for inclusion in the Work
by You to the Licensor shall be under the terms and conditions of
this License, without any additional terms or conditions.
Notwithstanding the above, nothing herein shall supersede or modify
the terms of any separate license agreement you may have executed
with Licensor regarding such Contributions.
6. Trademarks. This License does not grant permission to use the trade
names, trademarks, service marks, or product names of the Licensor,
except as required for reasonable and customary use in describing the
origin of the Work and reproducing the content of the NOTICE file.
7. Disclaimer of Warranty. Unless required by applicable law or
agreed to in writing, Licensor provides the Work (and each
Contributor provides its Contributions) on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
implied, including, without limitation, any warranties or conditions
of TITLE, NON-INFRINGEMENT, MERCHANTABILITY, or FITNESS FOR A
PARTICULAR PURPOSE. You are solely responsible for determining the
appropriateness of using or redistributing the Work and assume any
risks associated with Your exercise of permissions under this License.
8. Limitation of Liability. In no event and under no legal theory,
whether in tort (including negligence), contract, or otherwise,
unless required by applicable law (such as deliberate and grossly
negligent acts) or agreed to in writing, shall any Contributor be
liable to You for damages, including any direct, indirect, special,
incidental, or consequential damages of any character arising as a
result of this License or out of the use or inability to use the
Work (including but not limited to damages for loss of goodwill,
work stoppage, computer failure or malfunction, or any and all
other commercial damages or losses), even if such Contributor
has been advised of the possibility of such damages.
9. Accepting Warranty or Additional Liability. While redistributing
the Work or Derivative Works thereof, You may choose to offer,
and charge a fee for, acceptance of support, warranty, indemnity,
or other liability obligations and/or rights consistent with this
License. However, in accepting such obligations, You may act only
on Your own behalf and on Your sole responsibility, not on behalf
of any other Contributor, and only if You agree to indemnify,
defend, and hold each Contributor harmless for any liability
incurred by, or claims asserted against, such Contributor by reason
of your accepting any such warranty or additional liability.
END OF TERMS AND CONDITIONS
APPENDIX: How to apply the Apache License to your work.
To apply the Apache License to your work, attach the following
boilerplate notice, with the fields enclosed by brackets "{}"
replaced with your own identifying information. (Don't include
the brackets!) The text should be enclosed in the appropriate
comment syntax for the file format. We also recommend that a
file or class name and description of purpose be included on the
same "printed page" as the copyright notice for easier
identification within third-party archives.
Copyright {yyyy} {name of copyright owner}
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

View File

@ -1,30 +0,0 @@
SHELL=/bin/bash
ifndef ELASTIC_VERSION
ELASTIC_VERSION := $(shell awk 'BEGIN { FS = "[= ]" } /^ELASTIC_VERSION=/ { print $$2 }' .env)
endif
export ELASTIC_VERSION
ifndef GIT_BRANCH
GIT_BRANCH := $(shell git rev-parse --abbrev-ref HEAD)
endif
TARGETS := apm-server elasticsearch logstash kibana beats
images: $(TARGETS)
push: $(TARGETS:%=%-push)
clean: $(TARGETS:%=%-clean)
$(TARGETS): $(TARGETS:%=%-checkout)
(cd stack/$@ && make)
$(TARGETS:%=%-push): $(TARGETS:%=%-checkout)
(cd stack/$(@:%-push=%) && make push)
$(TARGETS:%=%-checkout):
test -d stack/$(@:%-checkout=%) || \
git clone https://github.com/elastic/$(@:%-checkout=%)-docker.git stack/$(@:%-checkout=%)
(cd stack/$(@:%-checkout=%) && git fetch && git reset --hard && git checkout origin/$(GIT_BRANCH))
$(TARGETS:%=%-clean):
rm -rf stack/$(@:%-clean=%)

View File

@ -1,25 +0,0 @@
# stack-docker
This example Docker Compose configuration demonstrates many components of the
Elastic Stack, all running on a single machine under Docker.
## Prerequisites
- Docker and Compose. Windows and Mac users get Compose installed automatically
with Docker. Linux users can:
```
pip install docker-compose
```
- At least 4GiB of RAM for the containers. Windows and Mac users _must_
configure their Docker virtual machine to have more than the default 2 GiB of
RAM:
![Docker VM memory settings](screenshots/docker-vm-memory-settings.png)
## Starting the stack
Try `docker-compose up` to create a demonstration Elastic Stack with
Elasticsearch, Kibana, Logstash, Auditbeat, Metricbeat, Filebeat, Packetbeat,
and Heartbeat.
Point a browser at [`http://localhost:5601`](http://localhost:5601) to see the results.
Log in with `elastic` / `changeme`.

View File

@ -1,28 +0,0 @@
input {
http {
port => 31311 # default: 8080
}
}
filter {
grok{
match => { "message" => "%{GREEDYDATA:request}"}
}
json{
source => "request"
target => "parsed"
}
split{
field=>"entries"
}
}
output {
elasticsearch {
hosts => [ 'elasticsearch' ]
user => 'elastic'
password => 'changeme'
index => "data-management-plan-%{[entries][indexType]}-%{+YYYY.MM.dd}"
}
}

View File

@ -1,171 +0,0 @@
---
version: '3'
services:
# The environment variable "TAG" is used throughout this file to
# specify the version of the images to run. The default is set in the
# '.env' file in this folder. It can be overridden with any normal
# technique for setting environment variables, for example:
#
# TAG=6.0.0-beta1 docker-compose up
#
# REF: https://docs.docker.com/compose/compose-file/#variable-substitution
#
# Also be sure to set the ELASTIC_VERSION variable. For released versions,
# ${TAG} and ${ELASTIC_VERSION} will be identical, but for pre-release
# versions, ${TAG} might contain an extra build identifier, like
# "6.0.0-beta1-3eab5b40", so a full invocation might look like:
#
# ELASTIC_VERSION=6.0.0-beta1 TAG=6.0.0-beta1-3eab5b40 docker-compose up
#
elasticsearch:
image: docker.elastic.co/elasticsearch/elasticsearch:${TAG}
container_name: elasticsearch
#volumes:
# - esdata:/usr/share/elasticsearch/data
environment: ['http.host=0.0.0.0', 'transport.host=127.0.0.1', 'ELASTIC_PASSWORD=${ELASTIC_PASSWORD}']
ports: ['0.0.0.0:9200:9200']
networks: ['stack']
kibana:
image: docker.elastic.co/kibana/kibana:${TAG}
container_name: kibana
ports: ['0.0.0.0:5601:5601']
networks: ['stack']
depends_on: ['elasticsearch']
logstash:
image: docker.elastic.co/logstash/logstash:${TAG}
container_name: logstash
# Provide a simple pipeline configuration for Logstash with a bind-mounted file.
volumes:
- ./config/logstash.conf:/usr/share/logstash/pipeline/logstash.conf
ports: ['0.0.0.0:31311:31311']
networks: ['stack']
depends_on: ['elasticsearch', 'setup_logstash']
filebeat:
image: docker.elastic.co/beats/filebeat:${TAG}
container_name: filebeat
command: -e -E 'output.elasticsearch.password=${ELASTIC_PASSWORD}'
# If the host system has logs at "/var/log", mount them at "/mnt/log"
# inside the container, where Filebeat can find them.
# volumes: ['/var/log:/mnt/log:ro']
networks: ['stack']
depends_on: ['elasticsearch', 'setup_filebeat']
heartbeat:
image: docker.elastic.co/beats/heartbeat:${TAG}
container_name: heartbeat
command: -e -E 'output.elasticsearch.password=${ELASTIC_PASSWORD}'
networks: ['stack']
depends_on: ['elasticsearch', 'setup_heartbeat']
# Run a short-lived container to set up Logstash.
setup_logstash:
image: centos:7
container_name: setup_logstash
volumes: ['./scripts/setup-logstash.sh:/usr/local/bin/setup-logstash.sh:ro']
# The script may have CR/LF line endings if using Docker for Windows, so
# make sure that they don't confuse Bash.
command: ['/bin/bash', '-c', 'cat /usr/local/bin/setup-logstash.sh | tr -d "\r" | bash']
environment: ['ELASTIC_PASSWORD=${ELASTIC_PASSWORD}']
networks: ['stack']
depends_on: ['elasticsearch']
setup_kibana:
image: centos:7
container_name: setup_kibana
volumes: ['./scripts/setup-kibana.sh:/usr/local/bin/setup-kibana.sh:ro']
command: ['/bin/bash', '-c', 'cat /usr/local/bin/setup-kibana.sh | tr -d "\r" | bash']
environment: ['ELASTIC_PASSWORD=${ELASTIC_PASSWORD}']
networks: ['stack']
depends_on: ['elasticsearch']
setup_filebeat:
image: docker.elastic.co/beats/filebeat:${TAG}
container_name: setup_filebeat
volumes: ['./scripts/setup-beat.sh:/usr/local/bin/setup-beat.sh:ro']
command: ['/bin/bash', '-c', 'cat /usr/local/bin/setup-beat.sh | tr -d "\r" | bash -s filebeat']
environment: ['ELASTIC_PASSWORD=${ELASTIC_PASSWORD}']
networks: ['stack']
depends_on: ['kibana']
setup_heartbeat:
image: docker.elastic.co/beats/heartbeat:${TAG}
container_name: setup_heartbeat
volumes: ['./scripts/setup-beat.sh:/usr/local/bin/setup-beat.sh:ro']
command: ['/bin/bash', '-c', 'cat /usr/local/bin/setup-beat.sh | tr -d "\r" | bash -s heartbeat']
environment: ['ELASTIC_PASSWORD=${ELASTIC_PASSWORD}']
networks: ['stack']
depends_on: ['kibana']
##########################DOCSBOX######################################################################
# web:
# restart: always
# build: ./docsbox-master/docsbox
# expose:
# - "8000"
# links:
# - redis:redis
# volumes:
# - docsbox:/home/docsbox
# - media:/home/docsbox/media
# command: gunicorn -b :8000 docsbox:app
# networks: ['stack']
#
# rqworker:
# restart: always
# build: ./docsbox-master/docsbox
# links:
# - redis:redis
# volumes:
# - web
# command: rq worker -c docsbox.settings
# networks: ['stack']
#
# rqscheduler:
# restart: always
# build: ./docsbox-master/docsbox
# links:
# - redis:redis
# volumes:
# - web
# command: rqscheduler -H redis -p 6379 -d 0
# networks: ['stack']
#
# nginx:
# restart: always
# build: ./docsbox-master/nginx/
# ports:
# - "81:80"
# volumes:
# - web
# links:
# - web:web
# networks: ['stack']
#
# redis:
# restart: always
# image: redis:latest
# expose:
# - "6379"
# volumes:
# - redisdata:/data
# networks: ['stack']
##########################SETTIGNS######################################################################
volumes:
#esdata:
#driver: local
redisdata:
driver: local
docsbox:
driver: local
media:
driver: local
networks: {stack: {}}

Binary file not shown.

Before

(image error) Size: 46 KiB

View File

@ -1,18 +0,0 @@
#!/bin/bash
set -euo pipefail
beat=$1
until curl -s http://kibana:5601; do
sleep 2
done
sleep 5
# Load the sample dashboards for the Beat.
# REF: https://www.elastic.co/guide/en/beats/metricbeat/master/metricbeat-sample-dashboards.html
${beat} setup \
-E setup.kibana.host=kibana \
-E setup.kibana.username=elastic \
-E setup.kibana.password=${ELASTIC_PASSWORD} \
-E output.elasticsearch.password=${ELASTIC_PASSWORD}

View File

@ -1,10 +0,0 @@
#!/bin/bash
set -euo pipefail
es_url=http://elastic:${ELASTIC_PASSWORD}@elasticsearch:9200
# Wait for Elasticsearch to start up before doing anything.
until curl -s $es_url -o /dev/null; do
sleep 1
done

View File

@ -1,10 +0,0 @@
#!/bin/bash
set -euo pipefail
es_url=http://elastic:${ELASTIC_PASSWORD}@elasticsearch:9200
# Wait for Elasticsearch to start up before doing anything.
until curl -s $es_url -o /dev/null; do
sleep 1
done

View File

@ -1,2 +0,0 @@
*
!/.gitignore

View File

@ -1,20 +0,0 @@
---
## Default Elasticsearch configuration from elasticsearch-docker.
## from https://github.com/elastic/elasticsearch-docker/blob/master/build/elasticsearch/elasticsearch.yml
#
network.host: 0.0.0.0
# minimum_master_nodes need to be explicitly set when bound on a public IP
# set to 1 to allow single node clusters
# Details: https://github.com/elastic/elasticsearch/pull/17288
# discovery.zen.minimum_master_nodes: 1
## Use single node discovery in order to disable production mode and avoid bootstrap checks
## see https://www.elastic.co/guide/en/elasticsearch/reference/current/bootstrap-checks.html
#
discovery.type: single-node
## Search Guard
#
cluster.routing.allocation.disk.watermark.flood_stage: 99%

View File

@ -1,179 +0,0 @@
#https://github.com/elastic/elasticsearch/blob/7.4/distribution/src/config/log4j2.properties
status = error
# log action execution errors for easier debugging
logger.action.name = org.elasticsearch.action
logger.action.level = debug
appender.console.type = Console
appender.console.name = console
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
######## Server JSON ############################
appender.rolling.type = RollingFile
appender.rolling.name = rolling
appender.rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_server.json
appender.rolling.layout.type = ESJsonLayout
appender.rolling.layout.type_name = server
appender.rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM-dd}-%i.json.gz
appender.rolling.policies.type = Policies
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 1
appender.rolling.policies.time.modulate = true
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size = 128MB
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.fileIndex = nomax
appender.rolling.strategy.action.type = Delete
appender.rolling.strategy.action.basepath = ${sys:es.logs.base_path}
appender.rolling.strategy.action.condition.type = IfFileName
appender.rolling.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-*
appender.rolling.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize
appender.rolling.strategy.action.condition.nested_condition.exceeds = 2GB
################################################
######## Server - old style pattern ###########
appender.rolling_old.type = RollingFile
appender.rolling_old.name = rolling_old
appender.rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}.log
appender.rolling_old.layout.type = PatternLayout
appender.rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
appender.rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}-%d{yyyy-MM-dd}-%i.log.gz
appender.rolling_old.policies.type = Policies
appender.rolling_old.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling_old.policies.time.interval = 1
appender.rolling_old.policies.time.modulate = true
appender.rolling_old.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling_old.policies.size.size = 128MB
appender.rolling_old.strategy.type = DefaultRolloverStrategy
appender.rolling_old.strategy.fileIndex = nomax
appender.rolling_old.strategy.action.type = Delete
appender.rolling_old.strategy.action.basepath = ${sys:es.logs.base_path}
appender.rolling_old.strategy.action.condition.type = IfFileName
appender.rolling_old.strategy.action.condition.glob = ${sys:es.logs.cluster_name}-*
appender.rolling_old.strategy.action.condition.nested_condition.type = IfAccumulatedFileSize
appender.rolling_old.strategy.action.condition.nested_condition.exceeds = 2GB
################################################
rootLogger.level = info
rootLogger.appenderRef.console.ref = console
rootLogger.appenderRef.rolling.ref = rolling
rootLogger.appenderRef.rolling_old.ref = rolling_old
######## Deprecation JSON #######################
appender.deprecation_rolling.type = RollingFile
appender.deprecation_rolling.name = deprecation_rolling
appender.deprecation_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_deprecation.json
appender.deprecation_rolling.layout.type = ESJsonLayout
appender.deprecation_rolling.layout.type_name = deprecation
appender.deprecation_rolling.layout.esmessagefields=x-opaque-id
appender.deprecation_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_deprecation-%i.json.gz
appender.deprecation_rolling.policies.type = Policies
appender.deprecation_rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.deprecation_rolling.policies.size.size = 1GB
appender.deprecation_rolling.strategy.type = DefaultRolloverStrategy
appender.deprecation_rolling.strategy.max = 4
#################################################
######## Deprecation - old style pattern #######
appender.deprecation_rolling_old.type = RollingFile
appender.deprecation_rolling_old.name = deprecation_rolling_old
appender.deprecation_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}_deprecation.log
appender.deprecation_rolling_old.layout.type = PatternLayout
appender.deprecation_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
appender.deprecation_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_deprecation-%i.log.gz
appender.deprecation_rolling_old.policies.type = Policies
appender.deprecation_rolling_old.policies.size.type = SizeBasedTriggeringPolicy
appender.deprecation_rolling_old.policies.size.size = 1GB
appender.deprecation_rolling_old.strategy.type = DefaultRolloverStrategy
appender.deprecation_rolling_old.strategy.max = 4
#################################################
logger.deprecation.name = org.elasticsearch.deprecation
logger.deprecation.level = warn
logger.deprecation.appenderRef.deprecation_rolling.ref = deprecation_rolling
logger.deprecation.appenderRef.deprecation_rolling_old.ref = deprecation_rolling_old
logger.deprecation.additivity = false
######## Search slowlog JSON ####################
appender.index_search_slowlog_rolling.type = RollingFile
appender.index_search_slowlog_rolling.name = index_search_slowlog_rolling
appender.index_search_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\
.cluster_name}_index_search_slowlog.json
appender.index_search_slowlog_rolling.layout.type = ESJsonLayout
appender.index_search_slowlog_rolling.layout.type_name = index_search_slowlog
appender.index_search_slowlog_rolling.layout.esmessagefields=message,took,took_millis,total_hits,types,stats,search_type,total_shards,source,id
appender.index_search_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs\
.cluster_name}_index_search_slowlog-%i.json.gz
appender.index_search_slowlog_rolling.policies.type = Policies
appender.index_search_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.index_search_slowlog_rolling.policies.size.size = 1GB
appender.index_search_slowlog_rolling.strategy.type = DefaultRolloverStrategy
appender.index_search_slowlog_rolling.strategy.max = 4
#################################################
######## Search slowlog - old style pattern ####
appender.index_search_slowlog_rolling_old.type = RollingFile
appender.index_search_slowlog_rolling_old.name = index_search_slowlog_rolling_old
appender.index_search_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_search_slowlog.log
appender.index_search_slowlog_rolling_old.layout.type = PatternLayout
appender.index_search_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
appender.index_search_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_search_slowlog-%i.log.gz
appender.index_search_slowlog_rolling_old.policies.type = Policies
appender.index_search_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy
appender.index_search_slowlog_rolling_old.policies.size.size = 1GB
appender.index_search_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy
appender.index_search_slowlog_rolling_old.strategy.max = 4
#################################################
logger.index_search_slowlog_rolling.name = index.search.slowlog
logger.index_search_slowlog_rolling.level = trace
logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling.ref = index_search_slowlog_rolling
logger.index_search_slowlog_rolling.appenderRef.index_search_slowlog_rolling_old.ref = index_search_slowlog_rolling_old
logger.index_search_slowlog_rolling.additivity = false
######## Indexing slowlog JSON ##################
appender.index_indexing_slowlog_rolling.type = RollingFile
appender.index_indexing_slowlog_rolling.name = index_indexing_slowlog_rolling
appender.index_indexing_slowlog_rolling.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_indexing_slowlog.json
appender.index_indexing_slowlog_rolling.layout.type = ESJsonLayout
appender.index_indexing_slowlog_rolling.layout.type_name = index_indexing_slowlog
appender.index_indexing_slowlog_rolling.layout.esmessagefields=message,took,took_millis,doc_type,id,routing,source
appender.index_indexing_slowlog_rolling.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_indexing_slowlog-%i.json.gz
appender.index_indexing_slowlog_rolling.policies.type = Policies
appender.index_indexing_slowlog_rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.index_indexing_slowlog_rolling.policies.size.size = 1GB
appender.index_indexing_slowlog_rolling.strategy.type = DefaultRolloverStrategy
appender.index_indexing_slowlog_rolling.strategy.max = 4
#################################################
######## Indexing slowlog - old style pattern ##
appender.index_indexing_slowlog_rolling_old.type = RollingFile
appender.index_indexing_slowlog_rolling_old.name = index_indexing_slowlog_rolling_old
appender.index_indexing_slowlog_rolling_old.fileName = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_indexing_slowlog.log
appender.index_indexing_slowlog_rolling_old.layout.type = PatternLayout
appender.index_indexing_slowlog_rolling_old.layout.pattern = [%d{ISO8601}][%-5p][%-25c{1.}] [%node_name]%marker %m%n
appender.index_indexing_slowlog_rolling_old.filePattern = ${sys:es.logs.base_path}${sys:file.separator}${sys:es.logs.cluster_name}\
_index_indexing_slowlog-%i.log.gz
appender.index_indexing_slowlog_rolling_old.policies.type = Policies
appender.index_indexing_slowlog_rolling_old.policies.size.type = SizeBasedTriggeringPolicy
appender.index_indexing_slowlog_rolling_old.policies.size.size = 1GB
appender.index_indexing_slowlog_rolling_old.strategy.type = DefaultRolloverStrategy
appender.index_indexing_slowlog_rolling_old.strategy.max = 4
#################################################
logger.index_indexing_slowlog.name = index.indexing.slowlog.index
logger.index_indexing_slowlog.level = trace
logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling.ref = index_indexing_slowlog_rolling
logger.index_indexing_slowlog.appenderRef.index_indexing_slowlog_rolling_old.ref = index_indexing_slowlog_rolling_old
logger.index_indexing_slowlog.additivity = false

View File

@ -1,16 +0,0 @@
#filebeat.registry_file: /usr/share/filebeat/registry
filebeat.inputs:
- type: log
paths:
- /usr/share/filebeat/log_data/dmp/openDMP*.log
tags: ["audit"]
enabled: true
reload.enabled: true
reload.period: 10s
multiline.pattern: '^[0-9]{4}-[0-9]{2}-[0-9]{2}'
multiline.negate: true
multiline.match: after
output.logstash:
hosts: ["logstash:31312"]
bulk_max_size: 128

View File

@ -1,17 +0,0 @@
---
## Default Kibana configuration from kibana-docker.
## from https://github.com/elastic/kibana-docker/blob/master/build/kibana/config/kibana.yml
#
server.name: kibana
server.host: "0"
## Custom configuration
#
#server.basePath: "/eformslogs"
elasticsearch.hosts: [ "http://elasticsearch:9200" ]
#elasticsearch.ssl.certificateAuthorities: [ "/usr/share/kibana/certificate_authorities/ca.crt" ]
elasticsearch.username: "kibana"
elasticsearch.password: ""
server.ssl.enabled: false
#server.ssl.key: "/usr/share/kibana/certificates/kibana.key"
#server.ssl.certificate: "/usr/share/kibana/certificates/kibana.crt"

View File

@ -1,103 +0,0 @@
#https://github.com/elastic/logstash/blob/7.4/config/log4j2.properties
status = error
name = LogstashPropertiesConfig
appender.console.type = Console
appender.console.name = plain_console
appender.console.layout.type = PatternLayout
appender.console.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]} %m%n
appender.json_console.type = Console
appender.json_console.name = json_console
appender.json_console.layout.type = JSONLayout
appender.json_console.layout.compact = true
appender.json_console.layout.eventEol = true
appender.rolling.type = RollingFile
appender.rolling.name = plain_rolling
appender.rolling.fileName = ${sys:ls.logs}/logstash-${sys:ls.log.format}.log
appender.rolling.filePattern = ${sys:ls.logs}/logstash-${sys:ls.log.format}-%d{yyyy-MM-dd}-%i.log.gz
appender.rolling.policies.type = Policies
appender.rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling.policies.time.interval = 1
appender.rolling.policies.time.modulate = true
appender.rolling.layout.type = PatternLayout
appender.rolling.layout.pattern = [%d{ISO8601}][%-5p][%-25c]%notEmpty{[%X{pipeline.id}]} %m%n
appender.rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling.policies.size.size = 100MB
appender.rolling.strategy.type = DefaultRolloverStrategy
appender.rolling.strategy.max = 30
appender.json_rolling.type = RollingFile
appender.json_rolling.name = json_rolling
appender.json_rolling.fileName = ${sys:ls.logs}/logstash-${sys:ls.log.format}.log
appender.json_rolling.filePattern = ${sys:ls.logs}/logstash-${sys:ls.log.format}-%d{yyyy-MM-dd}-%i.log.gz
appender.json_rolling.policies.type = Policies
appender.json_rolling.policies.time.type = TimeBasedTriggeringPolicy
appender.json_rolling.policies.time.interval = 1
appender.json_rolling.policies.time.modulate = true
appender.json_rolling.layout.type = JSONLayout
appender.json_rolling.layout.compact = true
appender.json_rolling.layout.eventEol = true
appender.json_rolling.policies.size.type = SizeBasedTriggeringPolicy
appender.json_rolling.policies.size.size = 100MB
appender.json_rolling.strategy.type = DefaultRolloverStrategy
appender.json_rolling.strategy.max = 30
rootLogger.level = ${sys:ls.log.level}
rootLogger.appenderRef.console.ref = ${sys:ls.log.format}_console
rootLogger.appenderRef.rolling.ref = ${sys:ls.log.format}_rolling
# Slowlog
appender.console_slowlog.type = Console
appender.console_slowlog.name = plain_console_slowlog
appender.console_slowlog.layout.type = PatternLayout
appender.console_slowlog.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n
appender.json_console_slowlog.type = Console
appender.json_console_slowlog.name = json_console_slowlog
appender.json_console_slowlog.layout.type = JSONLayout
appender.json_console_slowlog.layout.compact = true
appender.json_console_slowlog.layout.eventEol = true
appender.rolling_slowlog.type = RollingFile
appender.rolling_slowlog.name = plain_rolling_slowlog
appender.rolling_slowlog.fileName = ${sys:ls.logs}/logstash-slowlog-${sys:ls.log.format}.log
appender.rolling_slowlog.filePattern = ${sys:ls.logs}/logstash-slowlog-${sys:ls.log.format}-%d{yyyy-MM-dd}-%i.log.gz
appender.rolling_slowlog.policies.type = Policies
appender.rolling_slowlog.policies.time.type = TimeBasedTriggeringPolicy
appender.rolling_slowlog.policies.time.interval = 1
appender.rolling_slowlog.policies.time.modulate = true
appender.rolling_slowlog.layout.type = PatternLayout
appender.rolling_slowlog.layout.pattern = [%d{ISO8601}][%-5p][%-25c] %m%n
appender.rolling_slowlog.policies.size.type = SizeBasedTriggeringPolicy
appender.rolling_slowlog.policies.size.size = 100MB
appender.rolling_slowlog.strategy.type = DefaultRolloverStrategy
appender.rolling_slowlog.strategy.max = 30
appender.json_rolling_slowlog.type = RollingFile
appender.json_rolling_slowlog.name = json_rolling_slowlog
appender.json_rolling_slowlog.fileName = ${sys:ls.logs}/logstash-slowlog-${sys:ls.log.format}.log
appender.json_rolling_slowlog.filePattern = ${sys:ls.logs}/logstash-slowlog-${sys:ls.log.format}-%d{yyyy-MM-dd}-%i.log.gz
appender.json_rolling_slowlog.policies.type = Policies
appender.json_rolling_slowlog.policies.time.type = TimeBasedTriggeringPolicy
appender.json_rolling_slowlog.policies.time.interval = 1
appender.json_rolling_slowlog.policies.time.modulate = true
appender.json_rolling_slowlog.layout.type = JSONLayout
appender.json_rolling_slowlog.layout.compact = true
appender.json_rolling_slowlog.layout.eventEol = true
appender.json_rolling_slowlog.policies.size.type = SizeBasedTriggeringPolicy
appender.json_rolling_slowlog.policies.size.size = 100MB
appender.json_rolling_slowlog.strategy.type = DefaultRolloverStrategy
appender.json_rolling_slowlog.strategy.max = 30
logger.slowlog.name = slowlog
logger.slowlog.level = trace
logger.slowlog.appenderRef.console_slowlog.ref = ${sys:ls.log.format}_console_slowlog
logger.slowlog.appenderRef.rolling_slowlog.ref = ${sys:ls.log.format}_rolling_slowlog
logger.slowlog.additivity = false
logger.licensereader.name = logstash.licensechecker.licensereader
logger.licensereader.level = error

View File

@ -1,10 +0,0 @@
---
## Default Logstash configuration from logstash-docker.
## from https://github.com/elastic/logstash-docker/blob/master/build/logstash/config/logstash-oss.yml
#
http.host: "0.0.0.0"
config.reload.automatic: true
config.reload.interval: 300s
path.queue: /usr/share/logstash/queue
path.dead_letter_queue: /usr/share/logstash/dead_letter_queue
xpack.monitoring.elasticsearch.password:

View File

@ -1,18 +0,0 @@
- pipeline.id: open_dmp_beats
queue.type: persisted
queue.max_bytes: 50mb
dead_letter_queue.enable: true
path.config: "/usr/share/logstash/pipeline/open_dmp_beats.conf"
queue.checkpoint.writes: 32
- pipeline.id: open_dmp_main
queue.type: persisted
queue.max_bytes: 50mb
dead_letter_queue.enable: true
path.config: "/usr/share/logstash/pipeline/open_dmp_main.conf"
queue.checkpoint.writes: 32
- pipeline.id: open_dmp_send_to_elastic
queue.type: persisted
queue.max_bytes: 50mb
dead_letter_queue.enable: true
path.config: "/usr/share/logstash/pipeline/open_dmp_send_to_elastic.conf"
queue.checkpoint.writes: 32

View File

@ -1,14 +0,0 @@
input {
beats {
port => 31312
ssl => false
client_inactivity_timeout => 3000
}
}
filter {
}
output {
pipeline { send_to => open_dmp_main }
}

View File

@ -1,19 +0,0 @@
input {
pipeline { address => open_dmp_main }
}
filter {
grok {
match => { "message" => "(?<timestamp>%{DATE} %{TIME})%{SPACE}%{LOGLEVEL:level} %{NUMBER:pid} --- \[%{DATA:thread}\] %{DATA:class}%{SPACE}: %{GREEDYDATA:logmessage}" }
}
if "_grokparsefailure" not in [tags] {
mutate
{
remove_field => [ "message" ]
}
}
}
output {
pipeline { send_to => open_dmp_send_to_elastic }
}

View File

@ -1,19 +0,0 @@
input {
pipeline { address => open_dmp_send_to_elastic }
}
filter {
}
output {
elasticsearch {
hosts => "elasticsearch:9200"
user => elastic
password =>
index =>"opendmp.logs"
#manage_template => true
#template => "/usr/share/logstash/templates/audit/openDMP.json"
#template_name => "cite.elas.openDMP-audit*"
#template_overwrite => true
}
}

View File

@ -1,4 +1,4 @@
<div class="wrapper" *ngIf="!onlySplash && !showOnlyRouterOutlet"> <div class="wrapper" *ngIf="!showOnlyRouterOutlet">
<app-navbar (sidebarToggled)="sidenav.toggle(); toggleNavbar($event);"></app-navbar> <app-navbar (sidebarToggled)="sidenav.toggle(); toggleNavbar($event);"></app-navbar>
<mat-sidenav-container fullscreen class="main-container"> <mat-sidenav-container fullscreen class="main-container">
<mat-sidenav #sidenav mode="side" opened class="sidenav" [fixedInViewport]="true" [fixedTopGap]="80"> <mat-sidenav #sidenav mode="side" opened class="sidenav" [fixedInViewport]="true" [fixedTopGap]="80">
@ -22,8 +22,8 @@
</div> </div>
</div> --> </div> -->
</div> </div>
<app-notification *ngIf="!onlySplash && !showOnlyRouterOutlet"></app-notification> <app-notification *ngIf="!showOnlyRouterOutlet"></app-notification>
<router-outlet *ngIf="onlySplash || showOnlyRouterOutlet"></router-outlet> <router-outlet *ngIf="showOnlyRouterOutlet"></router-outlet>
<ngx-guided-tour *ngIf="!showOnlyRouterOutlet" <ngx-guided-tour *ngIf="!showOnlyRouterOutlet"
[skipText]="'DASHBOARD.TOUR-GUIDE.LEAVE-TOUR'| translate" [skipText]="'DASHBOARD.TOUR-GUIDE.LEAVE-TOUR'| translate"

View File

@ -1,31 +1,28 @@
import { of as observableOf, Subscription } from 'rxjs'; import { of as observableOf, Subscription } from 'rxjs';
import { switchMap, filter, map, takeUntil } from 'rxjs/operators';
import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core'; import { AfterViewInit, Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute, NavigationEnd, NavigationStart, Router } from '@angular/router'; import { ActivatedRoute, NavigationEnd, NavigationStart, Router } from '@angular/router';
import { TranslateService } from '@ngx-translate/core'; import { TranslateService } from '@ngx-translate/core';
import { filter, map, switchMap } from 'rxjs/operators';
import { AuthService, LoginStatus } from './core/services/auth/auth.service'; import { AuthService, LoginStatus } from './core/services/auth/auth.service';
import { CultureService } from './core/services/culture/culture-service'; import { CultureService } from './core/services/culture/culture-service';
// import { BreadCrumbResolverService } from './ui/misc/breadcrumb/service/breadcrumb.service'; // import { BreadCrumbResolverService } from './ui/misc/breadcrumb/service/breadcrumb.service';
import { Title } from '@angular/platform-browser'; import { Title } from '@angular/platform-browser';
import { NgcCookieConsentService, NgcStatusChangeEvent } from "ngx-cookieconsent";
import { CookieService } from "ngx-cookie-service"; import { CookieService } from "ngx-cookie-service";
import { LanguageService } from './core/services/language/language.service'; import { NgcCookieConsentService, NgcStatusChangeEvent } from "ngx-cookieconsent";
import { ConfigurationService } from './core/services/configuration/configuration.service'; import { ConfigurationService } from './core/services/configuration/configuration.service';
import { LanguageService } from './core/services/language/language.service';
import { Location } from '@angular/common';
import { MatomoService } from './core/services/matomo/matomo-service';
import { SideNavService } from './core/services/sidenav/side-nav.sevice';
import { MatSidenav } from '@angular/material/sidenav'; import { MatSidenav } from '@angular/material/sidenav';
import { TimezoneService } from './core/services/timezone/timezone-service'; import { nameof } from 'ts-simple-nameof';
import { TenantConfigurationService } from './core/services/tenant-configuration/tenant-configuration.service';
import { TenantConfigurationType } from './core/common/enum/tenant-configuration-type'; import { TenantConfigurationType } from './core/common/enum/tenant-configuration-type';
import { CssColorsTenantConfiguration, TenantConfiguration } from './core/model/tenant-configuaration/tenant-configuration'; import { CssColorsTenantConfiguration, TenantConfiguration } from './core/model/tenant-configuaration/tenant-configuration';
import { nameof } from 'ts-simple-nameof'; import { MatomoService } from './core/services/matomo/matomo-service';
import { TenantHandlingService } from './core/services/tenant/tenant-handling.service'; import { SideNavService } from './core/services/sidenav/side-nav.sevice';
import { TenantConfigurationService } from './core/services/tenant-configuration/tenant-configuration.service';
import { TimezoneService } from './core/services/timezone/timezone-service';
import { BreadcrumbService } from './ui/misc/breadcrumb/breadcrumb.service'; import { BreadcrumbService } from './ui/misc/breadcrumb/breadcrumb.service';
import { RouterUtilsService } from './core/services/router/router-utils.service';
declare const gapi: any; declare const gapi: any;
@ -43,14 +40,12 @@ export class AppComponent implements OnInit, AfterViewInit {
private sideNavSubscription: Subscription; private sideNavSubscription: Subscription;
helpContentEnabled: boolean; helpContentEnabled: boolean;
private statusChangeSubscription: Subscription; private statusChangeSubscription: Subscription;
onlySplash = true;
showOnlyRouterOutlet = false; showOnlyRouterOutlet = false;
@ViewChild('sidenav') sidenav: MatSidenav; @ViewChild('sidenav') sidenav: MatSidenav;
constructor( constructor(
private router: Router, private router: Router,
private routerUtils: RouterUtilsService,
private route: ActivatedRoute, private route: ActivatedRoute,
private authentication: AuthService, private authentication: AuthService,
private translate: TranslateService, private translate: TranslateService,
@ -62,11 +57,9 @@ export class AppComponent implements OnInit, AfterViewInit {
private ccService: NgcCookieConsentService, private ccService: NgcCookieConsentService,
private language: LanguageService, private language: LanguageService,
private configurationService: ConfigurationService, private configurationService: ConfigurationService,
private location: Location,
private matomoService: MatomoService, private matomoService: MatomoService,
private tenantConfigurationService: TenantConfigurationService, private tenantConfigurationService: TenantConfigurationService,
private sidenavService: SideNavService, private sidenavService: SideNavService,
private tenantHandlingService: TenantHandlingService,
private breadcrumbService: BreadcrumbService private breadcrumbService: BreadcrumbService
) { ) {
this.initializeServices(); this.initializeServices();
@ -117,19 +110,6 @@ export class AppComponent implements OnInit, AfterViewInit {
} }
ngOnInit() { ngOnInit() {
if (this.location.path() === '') {
if (!this.configurationService.useSplash) {
this.onlySplash = false;
this.router.navigate([this.routerUtils.generateUrl('/home')]);
} else {
this.onlySplash = true;
this.router.navigate(['/reload']).then(() => this.router.navigate(['/splash']));
}
} else if (this.location.path() === '/splash') {
this.onlySplash = true;
} else {
this.onlySplash = false;
}
if (!this.cookieService.check("cookiesConsent")) { if (!this.cookieService.check("cookiesConsent")) {
// this.cookieService.set("cookiesConsent", "false", 356); // this.cookieService.set("cookiesConsent", "false", 356);
this.cookieService.set("cookiesConsent", "false", 356, null, null, false, 'Lax'); this.cookieService.set("cookiesConsent", "false", 356, null, null, false, 'Lax');

View File

@ -69,11 +69,6 @@ export class ConfigurationService extends BaseComponent {
return this._allowOrganizationCreator; return this._allowOrganizationCreator;
} }
private _useSplash: string;
get useSplash(): string {
return this._useSplash;
}
private _orcidPath: string; private _orcidPath: string;
get orcidPath(): string { get orcidPath(): string {
return this._orcidPath; return this._orcidPath;
@ -228,7 +223,6 @@ export class ConfigurationService extends BaseComponent {
this._lockInterval = config.lockInterval; this._lockInterval = config.lockInterval;
this._guideAssets = config.guideAssets; this._guideAssets = config.guideAssets;
this._allowOrganizationCreator = config.allowOrganizationCreator; this._allowOrganizationCreator = config.allowOrganizationCreator;
this._useSplash = config.useSplash;
this._orcidPath = config.orcidPath; this._orcidPath = config.orcidPath;
if (config.matomo) { if (config.matomo) {
this._matomoEnabled = config.matomo.enabled; this._matomoEnabled = config.matomo.enabled;

View File

@ -1,19 +0,0 @@
import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router';
import { SplashComponent } from './splash.component';
const routes: Routes = [
{
path: '',
component: SplashComponent,
data: {
breadcrumb: true
},
},
];
@NgModule({
imports: [RouterModule.forChild(routes)],
exports: [RouterModule]
})
export class SplashRoutingModule { }

View File

@ -1,2 +0,0 @@
<!-- <div id='splash' [innerHTML]="splashHTML"></div> -->
<iframe id='splash' class="splash-wrapper" src="assets/splash/" (load)="resizeFrame()"></iframe>

View File

@ -1,4 +0,0 @@
.splash-wrapper {
width: 100%;
border: none;
}

View File

@ -1,36 +0,0 @@
import { HttpClient } from '@angular/common/http';
import { Component, OnInit } from '@angular/core';
import { DomSanitizer } from '@angular/platform-browser';
import { ConfigurationService } from '@app/core/services/configuration/configuration.service';
import { BaseComponent } from '@common/base/base.component';
@Component({
selector: 'app-splash',
templateUrl: './splash.component.html',
styleUrls: ['./splash.component.scss']
})
export class SplashComponent extends BaseComponent implements OnInit {
splashHTML: any;
constructor(
private httpClient: HttpClient,
private configurationService: ConfigurationService,
private sanitizer: DomSanitizer
) {
super();
}
ngOnInit() {
}
resizeFrame() {
const frame: HTMLIFrameElement = (document.getElementById('splash') as HTMLIFrameElement);
frame.style.height = frame.contentWindow.document.body.scrollHeight + 'px';
}
getSplashUrl() {
}
}

View File

@ -1,15 +0,0 @@
import { NgModule } from '@angular/core';
import { CommonModule } from '@angular/common';
import { SplashComponent } from './splash.component';
import { SplashRoutingModule } from './slash.routing';
@NgModule({
declarations: [SplashComponent],
imports: [
CommonModule,
SplashRoutingModule
]
})
export class SplashModule { }

View File

@ -1,213 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Argos</title>
<link rel="icon" type="image/x-icon" href="../assets/img/fav-icon.png">
<!-- Font Awesome icons (free version)-->
<script src="https://use.fontawesome.com/releases/v5.12.1/js/all.js" crossorigin="anonymous"></script>
<!-- Google fonts-->
<link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet">
<!-- Core theme CSS -->
<link href="../css/styles.css" rel="stylesheet">
<link href="../css/navbar.css" rel="stylesheet">
<link href="../css/footer.css" rel="stylesheet">
<link href="../css/section.css" rel="stylesheet">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
</head>
<body id="page-top" class="bootstrap-overrides">
<!-- Navbar -->
<nav class="navbar navbar-expand-lg" id="nav">
<div class="container">
<a class="navbar-brand" href="../index.html"><img src="../assets/img/argos-logo.svg"></a>
<button class="collapse navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"><i class="fas fa-bars ml-1"></i></button>
<div class="navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav text-uppercase ml-auto">
<li class="nav-item">
<a class="nav-link dropbtn active-nav-link" href="#about">ABOUT</a>
<div id="aboutDropdown" class="dropdown-content">
<div class="dropdown-top"></div>
<div class="dropdown-options">
<a href="how-it-works.html">How it works</a>
<a href="https://trello.com/b/x49lylnK/argos" target="_blank">
Roadmap
<i class="fas fa-external-link-alt ext-link-icon"></i>
</a>
<a href="faqs.html">faqs</a>
<a href="contributors.html">Contributors</a>
</div>
</div>
</li>
<li class="nav-item">
<a class="nav-link dropbtn" href="#resources">RESOURCES</a>
<div id="resourcesDropdown" class="dropdown-content">
<div class="dropdown-top"></div>
<div class="dropdown-options">
<a href="../resources/media-kit.html">Media kit</a>
<a href="../resources/user-guide.html">User Guide</a>
<a href="../resources/co-branding.html">Co-branding</a>
</div>
</div>
</li>
<li class="nav-item"><a class="nav-link" href="../contact.html">CONTACT</a></li>
<li class="nav-item"><li class="nav-item"><a class="nav-link" href="/login">LOG IN</a></li></li>
</ul>
</div>
</div>
</nav>
<!-- Translators -->
<section class="page-section how-it-works" id="how-it-works">
<div class="container-small">
<div class="col">
<div class="page-title">About</div>
</div>
<div class="col pt-5 pb-3">
<div class="row title-4">Translators</div>
</div>
<div class="card mt-3 flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Greece" src="../assets/img/flag-of-greece.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">Athena Research & Innovation Center</p>
<p class="card-text-2">Dimitra Aglamisi, Elli Papadopoulou</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="card-img" alt="Flag of Spain" src="../assets/img/flag-of-spain.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">Consorcio Madroño</p>
<p class="card-text-2">Lanko López, Juan Corrales Correyero, Fernando González Ballesteros</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="card-img" alt="Flag of Turkey" src="../assets/img/flag-of-turkey.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">Turkish Higher Education Council Research Data and Open Data working group</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Austria" src="../assets/img/flag-of-austria.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">UNIVERSITY OF VIENNA</p>
<p class="card-text-2">Gerda McNeill, Raman Ganguly, Mihaela Hubert</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Slovakia" src="../assets/img/flag-of-slovakia.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">SLOVAK CENTRE FOR SCIENTIFIC AND TECHNICAL INFORMATION</p>
<p class="card-text-2">Silvia Horáková, Richard Rac, Iryna Kuchma</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Serbia" src="../assets/img/flag-of-serbia.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">UNIVERSITY OF BELGRADE - SERBIA.RDM TEAM</p>
<p class="card-text-2">Nadica Miljković, Milica Ševkušić, Ljiljana Lazarević, Biljana Kosanović, Vladimir Otašević, Obrad Vučkovac</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Portugal" src="../assets/img/flag-of-portugal.png">
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">FCT-FCCN, University of Minho</p>
<p class="card-text-2">Filipa Pereira, Carla Patinha, André Vieira, Paula Moura, Pedro Principe</p>
</div>
</div>
<div class="card flex-row">
<div class="col-4 d-flex justify-content-center align-items-center">
<div class="flag-img-container">
<img class="flag" alt="Flag of Croatia" src="../assets/img/flag-of-croatia.jpg" >
</div>
</div>
<div class="col-8 card-body pl-0" class="flex-column align-items-center">
<p class="card-text-1">Centre For Scientific Information of the Ruđer Bošković Institute</p>
<p class="card-text-2">Sanja Jurković, Lovorka Čaja and Alen Vodopijevec</p>
</div>
</div>
</div>
</section>
<!-- Footer-->
<footer class="footer">
<div class="container">
<div class="row justify-content-center">
<div class="col-auto">
<img src="../assets/img/argos-logo - Copy.svg" width="98" height="37">
</div>
<div class="col-auto">
<div class="footer-text">ARGOS receives funding from the European Union's Horizon 2020
Research and Innovation programme under Grant Agreement No. 777541.</div>
</div>
<div class="col-auto">
<a href="https://www.openaire.eu/">
<img src="../assets/img/Logo_Horizontal_white_small.png" width="126" height="30">
</a>
</div>
</div>
<div class="row justify-content-center pt-5">
<div class="col d-flex justify-content-end">
<a class="btn rounded-circle btn-social mx-1" href="https://www.facebook.com/groups/openaire/"><i class="fab fa-lg fa-facebook-f"></i></a>
<a class="btn rounded-circle btn-social twitter mx-1" href="https://twitter.com/OpenAIRE_eu"><i class="fab fa-lg fa-twitter"></i></a>
<a class="btn rounded-circle btn-social linkedin mx-1" href="https://www.linkedin.com/groups/3893548/"><i class="fab fa-lg fa-linkedin-in"></i></a>
<a class="btn rounded-circle btn-social youtube mx-1" href="https://www.youtube.com/channel/UChFYqizc-S6asNjQSoWuwjw"><i class="fab fa-lg fa-youtube"></i></a>
</div>
<div class="col">
<a class="btn mx-1" href="https://www.openaire.eu/newsletter/listing"><span class="newsletter">Newsletter</span><i class="fas fa-lg fa-wifi wifi-rotate"></i></i></a>
</div>
</div>
<div class="row justify-content-center pt-5">
<a class="col-auto conditions-policy" href="/opensource-licences">Οpensource licences</a>
<a class="col-auto conditions-policy" href="/terms-and-conditions">Terms and conditions</a>
<a class="col-auto conditions-policy" href="/cookies-policy">Cookies policy</a>
</div>
<div class="row justify-content-center pt-5">
<div class="col-auto"><img src="../assets/img/Cc.logo.circle.png" width="24" height="24"></div>
<div class="col-auto pl-0"><img src="../assets/img/univ-access.png" width="24" height="24"></div>
<div class="licence">Unless otherwise indicated, all materials created by OpenAIRE are licenced under
</div>&nbsp;
<div><u><a class="licence" href="https://creativecommons.org/licenses/by/4.0/">
ATTRIBUTION 4.0 INTERNATIONAL LICENSE.
<i class="fas fa-external-link-alt ext-link-icon"></i>
</a></u></div>
</div>
</div>
</footer>
<!-- Core theme JS-->
<script src="../js/scripts.js"></script>
<!-- Bootstrap -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
</body>
</html>

File diff suppressed because it is too large Load Diff

View File

@ -1,505 +0,0 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
<title>Argos</title>
<link rel="icon" type="image/x-icon" href="../assets/img/fav-icon.png">
<!-- Font Awesome icons (free version)-->
<script src="https://use.fontawesome.com/releases/v5.12.1/js/all.js" crossorigin="anonymous"></script>
<!-- Google fonts-->
<link href="https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100;0,300;0,400;0,500;0,700;0,900;1,100;1,300;1,400;1,500;1,700;1,900&display=swap" rel="stylesheet">
<!-- Core theme CSS -->
<link href="../css/styles.css" rel="stylesheet">
<link href="../css/navbar.css" rel="stylesheet">
<link href="../css/footer.css" rel="stylesheet">
<link href="../css/section.css" rel="stylesheet">
<!-- Bootstrap -->
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
</head>
<body id="page-top" class="bootstrap-overrides">
<!-- Navbar -->
<nav class="navbar navbar-expand-lg" id="nav">
<div class="container">
<a class="navbar-brand" href="../index.html"><img src="../assets/img/argos-logo.svg"></a>
<button class="collapse navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarResponsive" aria-controls="navbarResponsive" aria-expanded="false" aria-label="Toggle navigation"><i class="fas fa-bars ml-1"></i></button>
<div class="navbar-collapse" id="navbarResponsive">
<ul class="navbar-nav text-uppercase ml-auto">
<li class="nav-item">
<a class="nav-link dropbtn active-nav-link" href="#about">ABOUT</a>
<div id="aboutDropdown" class="dropdown-content">
<div class="dropdown-top"></div>
<div class="dropdown-options">
<a href="how-it-works.html">How it works</a>
<a href="https://trello.com/b/x49lylnK/argos" target="_blank">
Roadmap
<i class="fas fa-external-link-alt ext-link-icon"></i>
</a>
<a href="faqs.html">faqs</a>
<a href="contributors.html">Contributors</a>
</div>
</div>
</li>
<li class="nav-item">
<a class="nav-link dropbtn" href="#resources">RESOURCES</a>
<div id="resourcesDropdown" class="dropdown-content">
<div class="dropdown-top"></div>
<div class="dropdown-options">
<a href="../resources/media-kit.html">Media kit</a>
<a href="../resources/user-guide.html">User Guide</a>
<a href="../resources/co-branding.html">Co-branding</a>
</div>
</div>
</li>
<li class="nav-item"><a class="nav-link" href="../contact.html">CONTACT</a></li>
<li class="nav-item"><li class="nav-item"><a class="nav-link" href="/login">LOG IN</a></li></li>
</ul>
</div>
</div>
</nav>
<!-- How it works -->
<section class="page-section how-it-works" id="how-it-works">
<div class="container-small">
<div class="col">
<div class="page-title">About</div>
</div>
<div class="col pt-5 pb-3">
<div class="row title-4">What it is</div>
</div>
<p class="pt-3">
ARGOS is the joint effort of OpenAIRE and EUDAT to deliver an open platform for Data Management Planning
that addresses FAIR and Open best practices and assumes no barriers for its use and adoption.
</p>
<p class="pt-2">
It is an open extensible service - available as a standalone service (OpenDMP) and as a OpenAIRE service
(ARGOS)
- that simplifies the management, validation, monitoring and maintenance of Data Management Plans. It
allows actors (researchers, managers, supervisors etc) to create actionable DMPs that may be freely
exchanged among infrastructures for carrying out specific aspects of the Data management process in
accordance with the intentions and commitment of Data owners.
</p>
<p class="pt-2">
ARGOS is a service that is integrated within the OpenAIRE platform and is freely offered for use through
the
<a href="http://catalogue.openaire.eu/"><u>OpenAIRE Service Catalogue</u></a> and the EOSC Catalogue.
ARGOS enhances the OpenAIRE
Research Graph while at the same time utilises its
underlying services, external sources and semantics to add value to the Dataset Description templates it
produces thus increasing validation of DMPs. DMPs in ARGOS are treated as research outputs that can be
assigned DOIs, licenses and can be re-distributed in a FAIR manner.
</p>
<div class="text-box">
<p>
<b>The Name:</b> ARGOS is inspired by Greek mythology, both from
<a href="https://en.wikipedia.org/wiki/Argus_Panoptes"><u>Argus Panoptes</u></a> the hundred-eyed
giant and
from <a href="https://en.wikipedia.org/wiki/Argus_(Argonaut)"><u>Argus (Argonaut)</u></a> builder of
Argos ship, for the many-eyes monitoring sense and for the crafting
and building for endurance concealing long-term goals.
</p>
</div>
<div class="col pt-0 pb-3">
<div class="row title-4">How it works</div>
</div>
<p class="pt-3">
Research Data Management (RDM) is a vital part of Open Science that lies at the heart of European
research for it increases the quality of produced data and ensures integrity and preservation of
research outputs. RDM refers to activities undertaken throughout a research lifecycle, spanning from
data collection to data process and analysis. Open Access and FAIR principles govern data activities
today to foster data discovery, distribution and exploitation, thus accelerating scientific breakthroughs.
Coronavirus vaccine is the ultimate example of what can be achieved in a short amount of time when
data are openly shared across the global scientific community. RDM urges scientific practices to be
adjusted in ways that enable data understandability and re-usability from both humans and machines;
services and tools are realised or re-designed to support the shift towards Open and FAIR research outputs.
</p>
<p class="pt-2">
Argos is a service for creating and publishing plans that describe data management activities,
commonly known as Data Management Plans (DMPs). The plans are produced as machine-actionable
outputs (ma-DMPs), in the form of rich text documents, following Open and FAIR practices and are
published in Zenodo. Argos supports RDM at the beginning of research for planning data activities to
be performed, as well as throughout and at the end of research for documenting the steps and
processes followed according to institutional or funder RDM requirements.
</p>
<div class="col pt-5 pb-3">
<div class="row title-5">Dmp Lifecycle</div>
</div>
<p class="pt-2">
Argos follows a full DMP publication lifecycle. Users create their DMPs and add descriptions for their
datasets. DMPs and Datasets are created in private mode by default and can be shared with
colleagues to facilitate the writing process. Datasets are added in DMPs per type and / or per scientific
discipline that they concern. That way information is well-organized and it is easier to distinguish
relevant information from a pool of data activities detailed in a single DMP record. Once created, DMPs
and their Datasets are in draft status and are treated as living documents in the Argos environment,
meaning that they can be versioned and updated at any time. When ready, users can validate and
finalize their DMPs, including corresponding Datasets, and change their visibility status from private to
open. Open DMPs in Argos are available and accessible to all from the Public Dashboards. To close the
DMP lifecycle, Argos integrates Zenodo, so users are able to publish their DMPs directly from its environment.
</p>
</div>
<div class="container">
<div class="col-12" style="margin-top: 121px; ">
<div style="position: relative;" id="lifecycle-img-container">
<img id="img-coloured" class="image-coloured img-sharp" src="../assets/img/lifecycle_full_color.png" alt="Dmp Lifecycle">
<img class="image-grey img-sharp" src="../assets/img/lifecycle_full_color.png" alt="Dmp Lifecycle">
<!-- <img class="preface-img" src="../assets/img/lifecycle_full_color.png" alt=""> -->
<!-- EDITORS-DRAFT -->
<div class="red-dot navigate-dot" data-navigate-to="multiple-navigation-1" data-clip-mode="clip-draft" style="top:24.7%; left: 23.5%; cursor: pointer;">
<div class="inner-red-dot"></div>
</div>
<!-- VALIDATED -->
<div class="red-dot navigate-dot" data-navigate-to="navigation-tab-2" data-clip-mode="clip-validated" style="top:19%; left: 56.5% ; cursor: pointer;">
<div class="inner-red-dot"></div>
</div>
<!-- FINALIZED -->
<div class="red-dot navigate-dot" data-navigate-to="navigation-tab-3" data-clip-mode="clip-finalized" style="top:39%; right: 19.7%; cursor: pointer;">
<div class="inner-red-dot"></div>
</div>
<!-- DMP -->
<div class="red-dot navigate-dot" data-navigate-to="navigation-tab-4" data-clip-mode="clip-dmp" style="top:67%; right: -0.3%; cursor: pointer;">
<div class="inner-red-dot"></div>
</div>
</div>
</div>
<div class="col-12" style="margin-top: 121px; ">
<div class="options-menu" id="options-menu">
<div class="row">
<div class="col-12 col-md-7">
<ul class="nav nav-tabs">
<li class="nav-item">
<a class="nav-link active" data-toggle="tab" id="multiple-navigation-1" data-img-fragment href="#create_and_add">Create & Add</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" id="navigation-tab-2" data-img-fragment="img-fragment-validated-is" href="#validate">Validate</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" id="navigation-tab-3" data-img-fragment="img-fragment-finalized-is" href="#finalize">Finalize</a>
</li>
<li class="nav-item">
<a class="nav-link" data-toggle="tab" id="navigation-tab-4" data-img-fragment="img-fragment-dmp-out" href="#dmp">Ma-Dmp Outputs</a>
</li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane show active" id="create_and_add">
<div class="nav-tab-inner-text">
Argos consists of two main editors: the DMP editor and the Dataset editor.
Both editors integrate OpenAIRE and ESOC APIs to ease the writing process and
help create links with other outputs. Also, the editors incorporate a mechanism
to enable compliance with the <a href="https://github.com/RDA-DMP-Common/RDA-DMP-Common-Standard" style="color: #23BCBA;">RDA DMP Common Standard</a>.
</div>
<!-- nested naviation -->
<ul class="nav nav-pills" style="padding-top: 2em;">
<li class="nav-item">
<a class="nav-link sub-navigation-button active" data-toggle="tab" data-img-fragment="img-fragment-dmp-editor" href="#dmp_editor_pane">DMP Editor</a>
</li>
<li class="nav-item">
<a class="nav-link sub-navigation-button" data-toggle="tab" data-img-fragment="img-fragment-dataset-editor" href="#dataset_editor_pane">Dataset Editor</a>
</li>
</ul>
<div class="tab-content">
<div role="tabpanel" class="tab-pane show active" id="dmp_editor_pane">
<div class="nav-tab-inner-text">
The DMP editor embeds the Dataset editor to provide a holistic view of a project's
scope, beneficiaries and data activities. Therefore, it guides users step-by-step
into adding appropriate administrative information, selecting templates that
correspond to research needs and requirements, and describing data activities.
</div>
</div>
<div role="tabpanel" class="tab-pane fade" id="dataset_editor_pane">
<div class="nav-tab-inner-text">
The Dataset editor concerns information that is solely for datasets, such as how Open
and FAIR principles have been applied to them throughout data management activities.
It is the place to select RDM templates and start answering data questions. Moreover,
the Dataset editor can be used independently at any time when new data are produced
throughout a project lifetime. That allows users to quickly describe their new data and
link them to existing DMPs in their dashboard.
</div>
</div>
</div>
</div>
<div role="tabpanel" class="tab-pane fade" id="validate">
<div class="nav-tab-inner-text">
Information contained in DMPs should be validated before being published.
Validation at this stage checks for mandatory fields in the DMP and reports back
when necessary information has not been provided by the user. Once the user
adds all necessary information, validation is successful.
</div>
</div>
<div role="tabpanel" class="tab-pane fade" id="finalize">
<div class="nav-tab-inner-text">
DMPs finalization is the process of locking working drafts of DMPs and publishing
them, either just on the Argos platform or on Zenodo where they also get a DOI.
It is possible for datasets contained in DMPs to be finalized independently. That
is important especially for datasets that can not be shared openly, such as those
of sensitive content. Before publishing DMPs, sensitive datasets can be detached
from its core. That way data descriptions are equally protected form being openly
shared along with the DMP content.
</div>
</div>
<div role="tabpanel" class="tab-pane fade" id="dmp">
<div class="nav-tab-inner-text">
Argos ma-DMP outputs carry rich information that exceeds metadata provided in
DMPs when they are created and deposited as plain texts. Argos applies the RDA
DMP Common Standard to comply with global practices on the machine-actinability.
This is important for two reasons:
</div>
<div class="row pt-2 nav-tab-inner-text">
<div class="col-auto" style="width:2.5em;color: #129D99;">I.</div>
<div class="col">It enables researchers to switch platforms at any time and seamlessly work across
different ma-DMP providers without losing vital information.
</div>
</div>
<div class="row nav-tab-inner-text pt-4">
<div class="col-auto " style="width:2.5em;color: #129D99;">II.</div>
<div class="col">Adds to the Scholarly Communication ecology and pushes for best practices
in neighbour areas to keep up pace, e.g. deposit in repositories and
classification of DMPs as data management plans and not as publications, reports or other outputs.</div>
</div>
</div>
</div>
</div>
<!-- Images -->
<div class="col" style="min-height: 20em;">
<img src="../assets/img/3_dmp_editor.png" class="img-fragment-step opacity-1 img-sharp" id="img-fragment-dmp-editor" alt="DMP editor">
<img src="../assets/img/dmp_out.png" class="img-fragment-step img-sharp" id="img-fragment-dmp-out" alt="DMP outputs">
<img src="../assets/img/4_dataset_editor.png" class="img-fragment-step img-sharp" id="img-fragment-dataset-editor" alt="Dataset editor">
<img src="../assets/img/6_validated_is.png" class="img-fragment-step img-sharp" id="img-fragment-validated-is" alt="Validated DMP">
<img src="../assets/img/8_finalized_is.png" class="img-fragment-step img-sharp" id="img-fragment-finalized-is" alt="Finalized DMP">
</div>
</div>
</div>
</div>
</div>
<div class="container-small" style="margin-top: 7em;">
<div class="col pt-5 pb-3" >
<div class="row title-5">Argos in the OpenAIRE ecosystem</div>
</div>
<p class="pt-2">
Argos is hooked on the OpenAIRE ecosystem comprising a diverse set of services and tools for Open
Science and Scholarly Communication, from technical to educational and consultative in nature.
OpenAIRE services and tools are provided for immediate consumption by end-users, i.e. researchers,
research communities, research performing or funding organizations and policymakers. Moreover,
OpenAIRE services are exploitable by software engineers. Argos integrates other OpenAIRE services to
maximise efficiency of operations in Open and FAIR ecosystems and to make connections that add
value in Open Science at global scale. OpenAIRE services that Argos connects to are:
</p>
</div>
<div class="container">
<div class="col" style="margin-top: 121px; position: relative;">
<img src="../assets/img/openaire_ecosystem.png" style="width: 100%; height: auto;" alt="">
<!-- apis -->
<div class="red-dot" style="top:8%; left: 22%"
data-toggle="tooltip" data-placement="bottom"
title='<h2>APIs</h2>
Utilises OpenAIRE pool of resources
and APIs to provide quick input to
users (e.g. CORDIS, Datacite, re3data,
ORCID, etc).'
><div class="inner-red-dot"></div>
</div>
<!-- zenodo -->
<div class="red-dot" style="top:10%; left: 54%"
data-toggle="tooltip" data-placement="bottom"
title='<h2>Zenodo</h2>
Closes the DMP lifecycle by offering a
DMP platform to expose DMP for
their immediate publication in an
open and FAIR manner (DMPs are
assigned DOIs, get licenses, follow
versioning mechanism etc).'
><div class="inner-red-dot"></div>
</div>
<!-- provide -->
<div class="red-dot" style="top:48.2%; left: 2.5%"
data-toggle="tooltip" data-placement="bottom"
title='<h2>Provide</h2>
Sends notifications to repository
managers of the OpenAIRE network
when datasets described in Argos
ma-DMPs are claimed to be
deposited in their repositories.'
><div class="inner-red-dot"></div>
</div>
<!-- monitor -->
<div class="red-dot" style="top:60.2%; right: 2.5%"
data-toggle="tooltip" data-placement="bottom"
title="<h2>Monitor</h2>
Collects contextualised information
about ma-DMPs to understand how
RDM and DMPs evolve in time and
support decision making of funders
and policymakers."
>
<div class="inner-red-dot"></div>
</div>
<!-- graph -->
<div class="red-dot" style="bottom:14.2%; left: 40.5%"
data-toggle="tooltip" data-placement="bottom"
title='<h2>Research Graph</h2>
Enriches the ma-DMP entity in the
OpenAIRE knowledge graph for open
scholarly communication information
and creates relationships with other
research outputs and links, adding in
the OpenAIRE LOD ecology.'
>
<div class="inner-red-dot"></div>
</div>
<!-- explore -->
<div class="red-dot" style="bottom:1%; left: 56%" data-toggle="tooltip" data-placement="bottom"
title='
<h2>Explore</h2>
Adds ma-DMPs in the OpenAIRE
search engine and makes them
findable under a dedicated resource
type category "data managment
plan".'>
<div class="inner-red-dot"></div>
</div>
</div>
</div>
<div class="container-small">
<p class="mt-3 pt-4" style="font-weight: bolder;" >Useful Resources</p>
<div class="resources-list">
<div class="row">
<div class="col-auto" style="padding-top: .5em;">
<div class="blue-dot"></div>
</div>
<div class="col p-0">
Argos RDA output adoption:
<br>
<a href="https://www.rd-alliance.org/implementing-dmp-common-standard-argos-tool-madmps">
https://www.rd-alliance.org/implementing-dmp-common-standard-argos-tool-madmps
</a>
</div>
</div>
<div class="row">
<div class="col-auto" style="padding-top: .5em;">
<div class="blue-dot"></div>
</div>
<div class="col p-0">
Paper in the DaMaLOS conference:
<br>
<a href="https://repository.publisso.de/resource/frl:6423283">
https://repository.publisso.de/resource/frl:6423283
</a>
</div>
</div>
<div class="row" >
<div class="col-auto" style="padding-top: .5em;">
<div class="blue-dot"></div>
</div>
<div class="col p-0">
Webinar:
<br>
<a href="https://www.rd-alliance.org/implementing-dmp-common-standard-argos-tool-madmps">
https://www.rd-alliance.org/implementing-dmp-common-standard-argos-tool-madmps
</a>
(starts at 30:15)
</div>
</div>
</div>
<p class="pt-2">
More details on ARGOS as registered in the OpenAIRE services catalogue is available here:
<a href="http://catalogue.openaire.eu/service/openaire.argos"><u>http://catalogue.openaire.eu/service/openaire.argos</u></a>.
ARGOS as a Data Management
Planning tool within
EOSC can be explored in the EOSC catalogue of services here:
<a href="https://catalogue.eosc-portal.eu/service/openaire.argos"><u>https://catalogue.eosc-portal.eu/service/openaire.argos</u></a>
</p>
<p class="pt-2 pb-5">
ARGOS is offered as a standalone service, where
users can download the source code and co-brand it. Read more on how to implement that in the
<a href="../resources/co-branding.html"><u>Resources section</u></a>.
</p>
</div>
</section>
<!-- Footer-->
<footer class="footer">
<div class="container">
<div class="row justify-content-center">
<div class="col-auto">
<img src="../assets/img/argos-logo - Copy.svg" width="98" height="37">
</div>
<div class="col-auto">
<div class="footer-text">ARGOS receives funding from the European Union's Horizon 2020
Research and Innovation programme under Grant Agreement No. 777541.</div>
</div>
<div class="col-auto">
<a href="https://www.openaire.eu/">
<img src="../assets/img/Logo_Horizontal_white_small.png" width="126" height="30">
</a>
</div>
</div>
<div class="row justify-content-center pt-5">
<div class="col d-flex justify-content-end">
<a class="btn rounded-circle btn-social mx-1" href="https://www.facebook.com/groups/openaire/"><i class="fab fa-lg fa-facebook-f"></i></a>
<a class="btn rounded-circle btn-social twitter mx-1" href="https://twitter.com/OpenAIRE_eu"><i class="fab fa-lg fa-twitter"></i></a>
<a class="btn rounded-circle btn-social linkedin mx-1" href="https://www.linkedin.com/groups/3893548/"><i class="fab fa-lg fa-linkedin-in"></i></a>
<a class="btn rounded-circle btn-social youtube mx-1" href="https://www.youtube.com/channel/UChFYqizc-S6asNjQSoWuwjw"><i class="fab fa-lg fa-youtube"></i></a>
</div>
<div class="col">
<a class="btn mx-1" href="https://www.openaire.eu/newsletter/listing"><span class="newsletter">Newsletter</span><i class="fas fa-lg fa-wifi wifi-rotate"></i></i></a>
</div>
</div>
<div class="row justify-content-center pt-5">
<a class="col-auto conditions-policy" href="/opensource-licences">Οpensource licences</a>
<a class="col-auto conditions-policy" href="/terms-and-conditions">Terms and conditions</a>
<a class="col-auto conditions-policy" href="/cookies-policy">Cookies policy</a>
</div>
<div class="row justify-content-center pt-5">
<div class="col-auto"><img src="../assets/img/Cc.logo.circle.png" width="24" height="24"></div>
<div class="col-auto pl-0"><img src="../assets/img/univ-access.png" width="24" height="24"></div>
<div class="licence">Unless otherwise indicated, all materials created by OpenAIRE are licenced under
</div>&nbsp;
<div><u><a class="licence" href="https://creativecommons.org/licenses/by/4.0/">
ATTRIBUTION 4.0 INTERNATIONAL LICENSE.
<i class="fas fa-external-link-alt ext-link-icon"></i>
</a></u></div>
</div>
</div>
</footer>
<!-- Core theme JS-->
<script src="../js/scripts.js"></script>
<!-- Bootstrap -->
<script src="https://code.jquery.com/jquery-3.5.1.slim.min.js" integrity="sha384-DfXdz2htPH0lsSSs5nCTpuj/zy4C+OGpamoFVy38MVBnE+IbbVYUew+OrCXaRkfj" crossorigin="anonymous"></script>
<script src="https://cdn.jsdelivr.net/npm/popper.js@1.16.0/dist/umd/popper.min.js" integrity="sha384-Q6E9RHvbIyZFJoft+2mJbHaEWldlvI9IOYy5n3zV9zzTtmI3UksdQRVvoxMfooAo" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.5.0/js/bootstrap.min.js" integrity="sha384-OgVRvuATP1z7JjHLkuOU7Xw704+h835Lr+6QL9UvYjZE3Ipu6Tp75j7Bh/kR0JKI" crossorigin="anonymous"></script>
<!-- Js for this file -->
<script src="../js/how-it-works.js"></script>
</body>
</html>

Binary file not shown.

Before

(image error) Size: 48 KiB

Binary file not shown.

Before

(image error) Size: 54 KiB

Binary file not shown.

Before

(image error) Size: 28 KiB

Binary file not shown.

Before

(image error) Size: 155 KiB

Binary file not shown.

Before

(image error) Size: 205 KiB

Binary file not shown.

Before

(image error) Size: 457 KiB

Binary file not shown.

Before

(image error) Size: 310 KiB

Binary file not shown.

Before

(image error) Size: 482 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 158 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 183 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 196 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 185 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 277 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 241 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 5.0 MiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 2.8 MiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 2.0 MiB

Binary file not shown.

Before

(image error) Size: 471 KiB

Binary file not shown.

Before

(image error) Size: 287 KiB

Binary file not shown.

Before

(image error) Size: 483 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 63 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 109 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 178 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 106 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 102 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 103 KiB

Binary file not shown.

Before

(image error) Size: 27 KiB

Binary file not shown.

Before

(image error) Size: 260 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 2.5 MiB

Binary file not shown.

Before

(image error) Size: 158 KiB

Binary file not shown.

Before

(image error) Size: 190 KiB

Binary file not shown.

Before

(image error) Size: 36 KiB

Binary file not shown.

Before

(image error) Size: 52 KiB

Binary file not shown.

Before

(image error) Size: 40 KiB

Binary file not shown.

Before

(image error) Size: 2.3 KiB

Binary file not shown.

Before

(image error) Size: 35 KiB

Binary file not shown.

Before

(image error) Size: 110 KiB

View File

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 187.5 77.75" style="enable-background:new 0 0 187.5 77.75;" xml:space="preserve">
<path style="fill:#000000;" d="M177.646,27.845c-0.005-0.009-0.033-0.028-0.047-0.052c-0.119-0.089-0.264-0.16-0.382-0.25
c-1.472-1.051-3.282-1.924-5.48-2.64l-6.393-2.188l-1.033-0.354l-1.561-0.533c-0.943-0.311-1.778-0.603-2.509-0.877
c-3.721-1.433-4.899-2.57-4.786-4.31c0.151-2.334,1.844-3.423,3.819-3.876c1.453-0.339,3.042-0.354,4.291-0.273
c0.312,0.023,0.632,0.042,0.962,0.094c0.237,0.019,0.472,0.047,0.717,0.09h0.043c0.697,0.118,1.4,0.292,2.046,0.542
c0.188,0.061,0.358,0.146,0.538,0.222c0.527,0.217,1.037,0.518,1.447,0.872c0.024,0.014,0.029,0.033,0.052,0.042
c0.217,0.137,0.425,0.312,0.627,0.495c0.19,0.151,0.415,0.236,0.647,0.236h8.765c0.712,0,1.227-0.731,0.957-1.386
c-1.339-3.169-4.045-5.451-8.115-6.814c-2.234-0.745-4.895-1.226-7.959-1.414c-6.338-0.42-11.52,0.759-14.929,3.197
c-0.043,0.028-0.09,0.061-0.133,0.098c-0.193,0.133-0.376,0.265-0.542,0.415c-0.165,0.123-0.32,0.255-0.461,0.387
c-0.161,0.137-0.312,0.293-0.454,0.444c-1.173,1.192-2.045,2.678-2.532,4.328c-3.847-5.588-10.293-9.251-17.597-9.251
c-0.429,0-0.854,0.014-1.278,0.037c-1.217,0.071-2.4,0.245-3.555,0.51l-0.104,0.127c-6.286,1.457-11.482,5.706-14.274,11.374
c-0.08,0.179-0.169,0.367-0.254,0.556c-0.16,0.34-0.307,0.698-0.439,1.056c-0.877-2.155-2.098-4.131-3.607-5.861
c-0.104-0.127-0.217-0.255-0.33-0.382c-0.123-0.137-0.245-0.269-0.368-0.401c-2.004-2.093-4.433-3.777-7.149-4.904
c-1.772-0.745-3.673-1.245-5.653-1.476c-0.458-0.056-0.915-0.094-1.382-0.118h-0.028c-0.18-0.009-0.359-0.018-0.538-0.018
c-0.174-0.01-0.349-0.01-0.524-0.01c-0.367,0-0.74,0.01-1.102,0.033c-0.709,0.039-1.407,0.115-2.094,0.221
c-0.001,0-0.002,0.001-0.003,0.001c-0.401,0.062-0.801,0.132-1.195,0.217c-0.082,0.014-0.166,0.034-0.25,0.053
c-0.001,0-0.001,0-0.001,0c-0.028,0.006-0.053,0.011-0.08,0.017C81.057,6.664,78.825,7.6,76.83,8.875
c-0.137-0.127-0.58-0.495-1.268-0.957c-0.014-0.009-0.029-0.024-0.052-0.029c-0.094-0.056-0.194-0.117-0.292-0.174
c-0.325-0.202-0.674-0.41-1.08-0.613c-1.391-0.712-2.702-1.136-3.928-1.358c-0.175-0.038-0.335-0.057-0.5-0.08
c-0.009,0-0.014-0.005-0.023,0c-0.514-0.062-1.052-0.089-1.604-0.08c-0.146,0.005-0.282,0.009-0.429,0.018
c-0.051,0-0.113,0.005-0.17,0.019c-0.07,0-0.131,0.01-0.203,0.015c-0.018,0-0.042,0-0.055,0.009c-0.048,0-0.105,0.014-0.152,0.019
c-0.127,0.014-0.245,0.028-0.368,0.042c-0.127,0.024-0.254,0.043-0.372,0.061c-0.25,0.053-0.495,0.109-0.745,0.184
c-0.057,0.015-0.109,0.029-0.165,0.048c-0.292,0.085-0.594,0.183-0.901,0.292l-0.004,0.01c-0.156,0.056-0.302,0.117-0.454,0.179
c-0.155,0.071-0.315,0.141-0.466,0.217c-0.009,0-0.014,0.004-0.014,0.004c-0.108,0.052-0.217,0.109-0.33,0.17
c-0.028,0.014-0.047,0.028-0.075,0.042c-0.029,0.015-0.048,0.029-0.076,0.043c-0.321,0.165-0.623,0.349-0.906,0.542
c0,0-1.546,0.934-3.909,3.183V6.395c0-0.5-0.349-0.905-0.825-0.986c-0.047-0.023-0.117-0.038-0.179-0.038l-5.611-0.004
c-0.029-0.005-0.062-0.005-0.095-0.005c-0.032,0-0.065,0-0.094,0.005c-0.806,0.047-1.443,0.717-1.443,1.532v11.935l-3.928,3.886
V6.904c0-0.825-0.645-1.499-1.457-1.537c-0.023-0.005-0.052-0.005-0.08-0.005c-0.015,0-0.033,0-0.047,0.005h-0.005
c-0.009-0.005-0.019-0.005-0.028,0l-5.578-0.01c-0.562,0-1.005,0.434-1.005,1.01l-0.023,1.207c-0.005,0.787-0.864,1.254-1.533,0.844
c-2.617-1.622-5.63-2.674-8.855-2.985c-0.656-0.066-1.312-0.094-1.985-0.094C14.026,5.315,4.699,14.628,4.671,26.138
c0,0.759,0.047,1.504,0.127,2.235c1.098,10.473,9.921,18.626,20.658,18.645c1.684,0,3.311-0.193,4.876-0.57
c2.131-0.51,4.14-1.345,5.965-2.467h0.01c0.013-0.005,0.018-0.014,0.023-0.019c0.679-0.391,1.514,0.081,1.514,0.868v1.74
c0,0.505,0.41,0.915,0.919,0.915h5.819c0.849,0,1.532-0.684,1.532-1.528V32.169l3.928-3.81v17.598c0,0.844,0.684,1.528,1.528,1.528
h5.507c0.637,0,1.155-0.519,1.155-1.156l0.034-23.883v-1.618c0-0.211,0.056-0.4,0.156-0.551c0.047-0.076,0.103-0.146,0.174-0.203
c0,0,0.014-0.019,0.048-0.057c0.042-0.032,0.088-0.075,0.131-0.117c0.599-0.514,1.273-1.113,2.061-1.792
c3.263-2.73,6.021-3.112,8.072-2.749c0,0,0.005,0,0.029,0.005c0.051,0.014,0.165,0.051,0.306,0.127
c0.109,0.061,0.194,0.137,0.269,0.231c0.146,0.179,0.226,0.405,0.221,0.641c-1.725,3.056-2.706,6.588-2.706,10.351
c0,11.67,9.464,21.129,21.134,21.129c3.989,0,7.725-1.103,10.912-3.027c0.231,0.071,0.434,0.221,0.571,0.448
c1.051,1.834,1.655,3.956,1.655,6.201c-0.019,6.875-5.588,12.429-12.445,12.429c-3.937-0.004-7.445-1.839-9.717-4.71
c-1.519-1.9-2.491-4.258-2.669-6.833c-0.038-0.523-0.491-0.915-1.005-0.915l-6.503-0.005c-0.57,0-1.042,0.458-1.023,1.038
c0.104,2.362,0.613,4.626,1.458,6.715c3.059,7.743,10.599,13.212,19.426,13.231c11.581,0.01,20.98-9.364,21.003-20.936
c0-4.64-1.513-8.931-4.069-12.397c-0.085-0.128-0.147-0.264-0.17-0.41c0.91-1.321,1.674-2.754,2.264-4.272
c0.028,0.071,0.061,0.141,0.093,0.212c0.077,0.179,0.152,0.358,0.227,0.533c0.09,0.212,0.188,0.414,0.288,0.618
c0.08,0.165,0.217,0.433,0.302,0.603c0.207,0.377,0.415,0.759,0.637,1.127c0.112,0.184,0.216,0.358,0.333,0.533
c0.213,0.321,0.425,0.632,0.642,0.938c0.203,0.278,0.41,0.552,0.622,0.816c0.402,0.5,0.83,0.981,1.269,1.443
c0.179,0.188,0.363,0.368,0.547,0.552c0.33,0.311,0.67,0.617,1.018,0.919c0.156,0.123,0.307,0.255,0.463,0.382
c2.178,1.74,4.701,3.065,7.455,3.867c0.193,0.056,0.396,0.112,0.589,0.16c0.269,0.061,0.523,0.127,0.788,0.179
c0.33,0.071,0.655,0.132,0.985,0.189c0.194,0.038,0.391,0.066,0.584,0.094c0.43,0.052,0.873,0.104,1.312,0.137
c0.061,0.009,0.122,0.009,0.179,0.014c0.061,0.009,0.128,0.009,0.184,0.009c0.424,0.024,0.849,0.038,1.278,0.038
c0.589,0,1.173-0.019,1.75-0.066c1.367-0.113,2.706-0.358,3.988-0.712l0.033-0.042c0.278-0.085,0.557-0.161,0.83-0.25
c0.189-0.062,0.382-0.133,0.562-0.203c0.173-0.057,0.348-0.127,0.508-0.193c0.161-0.071,0.335-0.133,0.496-0.203
c0.226-0.104,0.448-0.198,0.669-0.292c1.004-0.449,1.953-0.986,2.848-1.59c0.359-0.226,0.708-0.467,1.042-0.717
c0.165-0.136,0.34-0.268,0.5-0.4c1.387-1.099,2.599-2.395,3.664-3.801c0.067-0.085,0.132-0.16,0.198-0.245
c0.034-0.061,0.066-0.113,0.109-0.161c0.552-0.772,1.075-1.57,1.513-2.409c0.246-0.434,0.467-0.896,0.661-1.348
c0.098-0.203,0.183-0.401,0.263-0.604c0.052-0.104,0.08-0.198,0.123-0.292c0.137-0.373,0.269-0.731,0.396-1.095
c0.028-0.085,0.057-0.16,0.076-0.245c0.089-0.273,0.174-0.556,0.259-0.83c0.076-0.311,0.16-0.627,0.231-0.938
c0.047-0.175,0.08-0.349,0.109-0.533c0.061-0.268,0.113-0.542,0.155-0.825c0.005-0.052,0.019-0.113,0.028-0.174
c0.038-0.302,0.08-0.627,0.109-0.943c0.071-0.717,0.113-1.434,0.113-2.174c0-0.524-0.023-1.052-0.062-1.566
c0.039,0.038,0.077,0.066,0.123,0.095c0,0.009,0.01,0.009,0.01,0.009l0.014,0.005c0.038,0.023,0.052,0.042,0.09,0.052
c0.108,0.103,0.23,0.179,0.363,0.254c1.212,0.863,2.673,1.627,4.38,2.264c0.354,0.136,0.717,0.268,1.095,0.386l9.01,3.065
c5.706,1.882,7.409,3.103,7.272,5.182c-0.265,4.07-5.183,4.348-8.115,4.164c-0.538-0.023-1.114-0.085-1.674-0.198h-0.029
c-0.708-0.118-1.415-0.292-2.061-0.523c-0.179-0.08-0.349-0.151-0.551-0.241c-0.514-0.217-1.01-0.495-1.433-0.868
c-0.024-0.004-0.029-0.028-0.043-0.028c-0.203-0.16-0.411-0.32-0.627-0.504c-0.175-0.146-0.41-0.241-0.647-0.241h-8.774
c-0.713,0-1.212,0.741-0.939,1.396c2.056,4.918,7.431,7.677,16.061,8.228c11.354,0.727,18.993-3.621,19.488-11.09
C182.05,32.825,180.664,30.019,177.646,27.845 M36.259,32.462c-0.575,0.994-1.282,1.905-2.103,2.697l-0.08,0.099
c-0.038,0.028-0.066,0.056-0.099,0.085h-0.005c-0.999,0.924-2.141,1.692-3.39,2.239c-0.08,0.043-0.165,0.085-0.25,0.123
c-1.485,0.613-3.112,0.967-4.819,0.967c-6.149,0-11.246-4.437-12.26-10.299c-0.133-0.688-0.193-1.419-0.193-2.145
c0-6.88,5.573-12.44,12.453-12.44c0.678,0,1.334,0.053,1.99,0.161c5.922,0.957,10.43,6.092,10.43,12.279
C37.933,28.496,37.325,30.627,36.259,32.462 M140.083,27.034c-0.01,0.175-0.019,0.349-0.033,0.519
c-0.01,0.165-0.033,0.33-0.057,0.495v0.019v0.009c-0.005,0.014-0.01,0.028-0.01,0.047c0,0.01,0,0.024-0.004,0.034v0.023
c0,0.009-0.004,0.019-0.004,0.028c-0.024,0.194-0.057,0.387-0.09,0.576c-0.038,0.221-0.08,0.443-0.132,0.66
c-0.043,0.188-0.095,0.377-0.151,0.566c-0.029,0.113-0.061,0.221-0.099,0.335c-0.052,0.16-0.104,0.32-0.165,0.481
c-0.067,0.193-0.142,0.381-0.222,0.57c-1.457,3.48-4.451,6.158-8.134,7.177c-0.514,0.141-1.042,0.254-1.588,0.33
c-0.242,0.033-0.487,0.061-0.732,0.085c-0.142,0.009-0.278,0.019-0.42,0.023c-0.197,0.01-0.395,0.014-0.598,0.014h-0.099
c-0.147,0-0.288-0.004-0.435-0.009c-0.112-0.005-0.225-0.009-0.334-0.019c-0.028-0.005-0.056-0.005-0.085-0.005
c-0.056,0-0.113-0.009-0.165-0.014c-0.023,0-0.043-0.005-0.066-0.009c-0.104-0.005-0.212-0.015-0.315-0.033
c-0.077-0.005-0.152-0.014-0.222-0.028c-0.18-0.029-0.359-0.057-0.538-0.09c-0.532-0.099-1.056-0.231-1.571-0.406
c-0.173-0.047-0.348-0.108-0.518-0.174c-0.839-0.302-1.632-0.693-2.376-1.16c-0.123-0.076-0.241-0.156-0.358-0.236
c-0.005,0-0.005,0-0.005-0.005c-0.123-0.08-0.242-0.165-0.359-0.249c-0.118-0.085-0.236-0.175-0.349-0.264
c-0.344-0.269-0.674-0.561-0.986-0.863c-0.065-0.067-0.136-0.133-0.202-0.203c-0.085-0.085-0.17-0.175-0.255-0.264
c-0.023-0.028-0.052-0.062-0.08-0.09c-0.123-0.132-0.24-0.268-0.358-0.41c0-0.005-0.005-0.009-0.01-0.014
c-0.09-0.104-0.179-0.217-0.264-0.325c-0.174-0.213-0.335-0.444-0.486-0.661c-0.112-0.15-0.202-0.306-0.292-0.467
c-0.32-0.518-0.599-1.065-0.83-1.631c-0.047-0.099-0.089-0.203-0.127-0.307c-0.033-0.08-0.062-0.16-0.09-0.24h0.005
c-0.042-0.113-0.085-0.231-0.123-0.349c-0.744-0.797-3.357-1.41-6.582-1.495c-0.1-0.005-0.198-0.009-0.302-0.009
c-0.193-0.01-0.391-0.01-0.585-0.01c-4.088,0-7.427,0.821-7.677,1.863h-0.023c-0.312,0.877-0.731,1.711-1.227,2.485
c-1.093,1.688-2.579,3.089-4.328,4.079c-0.863,0.485-1.782,0.877-2.749,1.155c-0.378,0.104-0.768,0.189-1.16,0.259
c-0.453,0.081-0.933,0.137-1.405,0.17c-0.25,0.01-0.495,0.028-0.74,0.028c-0.217,0-0.429-0.018-0.632-0.028
c-0.232,0-0.434,0-0.642-0.038c-0.207-0.014-0.42-0.028-0.622-0.071c-1.565-0.235-3.022-0.754-4.338-1.499
c-0.811-0.471-1.57-1.023-2.259-1.66c-0.788-0.721-1.476-1.537-2.046-2.438c-1.241-1.928-1.966-4.243-1.966-6.724
c0.004-3.895,1.796-7.365,4.625-9.643c0.273-0.245,0.566-0.443,0.878-0.646c0.188-0.141,0.385-0.264,0.584-0.377
c0.118-0.09,0.255-0.16,0.391-0.231c0-0.014,0.038-0.014,0.042-0.019c1.067-0.58,2.222-1.004,3.443-1.24
c0.801-0.17,1.618-0.25,2.475-0.25c5.098,0,9.484,3.079,11.393,7.483h0.01c0.273,1.038,3.739,1.853,7.973,1.853
c0.189,0,0.382,0,0.571-0.009c0.066,0,0.127-0.005,0.193-0.005c2.702-0.061,5.013-0.462,6.253-1.028
c0.15-0.061,0.278-0.131,0.391-0.197c0.089-0.062,0.165-0.114,0.231-0.17c1.787-4.711,6.348-8.054,11.681-8.054
c5.011,0,9.335,2.952,11.321,7.209c0.028,0.053,0.052,0.104,0.075,0.161c0.043,0.085,0.08,0.17,0.118,0.259
c0.042,0.09,0.085,0.184,0.123,0.279c0.113,0.287,0.212,0.575,0.297,0.872c0.307,0.971,0.495,1.994,0.547,3.051
c0.01,0.216,0.014,0.443,0.014,0.665C140.097,26.695,140.093,26.865,140.083,27.034"/>
</svg>

Before

(image error) Size: 11 KiB

File diff suppressed because one or more lines are too long

Before

(image error) Size: 7.1 KiB

View File

@ -1,101 +0,0 @@
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- Generator: Adobe Illustrator 21.0.0, SVG Export Plug-In . SVG Version: 6.00 Build 0) -->
<svg version="1.1" id="Layer_1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" x="0px" y="0px"
viewBox="0 0 187.5 77.75" style="enable-background:new 0 0 187.5 77.75;" xml:space="preserve">
<path style="fill:#23BCBA;" d="M177.646,27.845c-0.005-0.009-0.033-0.028-0.047-0.052c-0.119-0.089-0.264-0.16-0.382-0.25
c-1.472-1.051-3.282-1.924-5.48-2.64l-6.393-2.188l-1.033-0.354l-1.561-0.533c-0.943-0.311-1.778-0.603-2.509-0.877
c-3.721-1.433-4.899-2.57-4.786-4.31c0.151-2.334,1.844-3.423,3.819-3.876c1.453-0.339,3.042-0.354,4.291-0.273
c0.312,0.023,0.632,0.042,0.962,0.094c0.237,0.019,0.472,0.047,0.717,0.09h0.043c0.697,0.118,1.4,0.292,2.046,0.542
c0.188,0.061,0.358,0.146,0.538,0.222c0.527,0.217,1.037,0.518,1.447,0.872c0.024,0.014,0.029,0.033,0.052,0.042
c0.217,0.137,0.425,0.312,0.627,0.495c0.19,0.151,0.415,0.236,0.647,0.236h8.765c0.712,0,1.227-0.731,0.957-1.386
c-1.339-3.169-4.045-5.451-8.115-6.814c-2.234-0.745-4.895-1.226-7.959-1.414c-6.338-0.42-11.52,0.759-14.929,3.197
c-0.043,0.028-0.09,0.061-0.133,0.098c-0.193,0.133-0.376,0.265-0.542,0.415c-0.165,0.123-0.32,0.255-0.461,0.387
c-0.161,0.137-0.312,0.293-0.454,0.444c-1.173,1.192-2.045,2.678-2.532,4.328c-3.847-5.588-10.293-9.251-17.597-9.251
c-0.429,0-0.854,0.014-1.278,0.037c-1.217,0.071-2.4,0.245-3.555,0.51l-0.104,0.127c-6.286,1.457-11.482,5.706-14.274,11.374
c-0.08,0.179-0.169,0.367-0.254,0.556c-0.16,0.34-0.307,0.698-0.439,1.056c-0.877-2.155-2.098-4.131-3.607-5.861
c-0.104-0.127-0.217-0.255-0.33-0.382c-0.123-0.137-0.245-0.269-0.368-0.401c-2.004-2.093-4.433-3.777-7.149-4.904
c-1.772-0.745-3.673-1.245-5.653-1.476c-0.458-0.056-0.915-0.094-1.382-0.118h-0.028c-0.18-0.009-0.359-0.018-0.538-0.018
c-0.174-0.01-0.349-0.01-0.524-0.01c-0.367,0-0.74,0.01-1.102,0.033c-0.709,0.039-1.407,0.115-2.094,0.221
c-0.001,0-0.002,0.001-0.003,0.001c-0.401,0.062-0.801,0.132-1.195,0.217c-0.082,0.014-0.166,0.034-0.25,0.053
c-0.001,0-0.001,0-0.001,0c-0.028,0.006-0.053,0.011-0.08,0.017C81.057,6.664,78.825,7.6,76.83,8.875
c-0.137-0.127-0.58-0.495-1.268-0.957c-0.014-0.009-0.029-0.024-0.052-0.029c-0.094-0.056-0.194-0.117-0.292-0.174
c-0.325-0.202-0.674-0.41-1.08-0.613c-1.391-0.712-2.702-1.136-3.928-1.358c-0.175-0.038-0.335-0.057-0.5-0.08
c-0.009,0-0.014-0.005-0.023,0c-0.514-0.062-1.052-0.089-1.604-0.08c-0.146,0.005-0.282,0.009-0.429,0.018
c-0.051,0-0.113,0.005-0.17,0.019c-0.07,0-0.131,0.01-0.203,0.015c-0.018,0-0.042,0-0.055,0.009c-0.048,0-0.105,0.014-0.152,0.019
c-0.127,0.014-0.245,0.028-0.368,0.042c-0.127,0.024-0.254,0.043-0.372,0.061c-0.25,0.053-0.495,0.109-0.745,0.184
c-0.057,0.015-0.109,0.029-0.165,0.048c-0.292,0.085-0.594,0.183-0.901,0.292l-0.004,0.01c-0.156,0.056-0.302,0.117-0.454,0.179
c-0.155,0.071-0.315,0.141-0.466,0.217c-0.009,0-0.014,0.004-0.014,0.004c-0.108,0.052-0.217,0.109-0.33,0.17
c-0.028,0.014-0.047,0.028-0.075,0.042c-0.029,0.015-0.048,0.029-0.076,0.043c-0.321,0.165-0.623,0.349-0.906,0.542
c0,0-1.546,0.934-3.909,3.183V6.395c0-0.5-0.349-0.905-0.825-0.986c-0.047-0.023-0.117-0.038-0.179-0.038l-5.611-0.004
c-0.029-0.005-0.062-0.005-0.095-0.005c-0.032,0-0.065,0-0.094,0.005c-0.806,0.047-1.443,0.717-1.443,1.532v11.935l-3.928,3.886
V6.904c0-0.825-0.645-1.499-1.457-1.537c-0.023-0.005-0.052-0.005-0.08-0.005c-0.015,0-0.033,0-0.047,0.005h-0.005
c-0.009-0.005-0.019-0.005-0.028,0l-5.578-0.01c-0.562,0-1.005,0.434-1.005,1.01l-0.023,1.207c-0.005,0.787-0.864,1.254-1.533,0.844
c-2.617-1.622-5.63-2.674-8.855-2.985c-0.656-0.066-1.312-0.094-1.985-0.094C14.026,5.315,4.699,14.628,4.671,26.138
c0,0.759,0.047,1.504,0.127,2.235c1.098,10.473,9.921,18.626,20.658,18.645c1.684,0,3.311-0.193,4.876-0.57
c2.131-0.51,4.14-1.345,5.965-2.467h0.01c0.013-0.005,0.018-0.014,0.023-0.019c0.679-0.391,1.514,0.081,1.514,0.868v1.74
c0,0.505,0.41,0.915,0.919,0.915h5.819c0.849,0,1.532-0.684,1.532-1.528V32.169l3.928-3.81v17.598c0,0.844,0.684,1.528,1.528,1.528
h5.507c0.637,0,1.155-0.519,1.155-1.156l0.034-23.883v-1.618c0-0.211,0.056-0.4,0.156-0.551c0.047-0.076,0.103-0.146,0.174-0.203
c0,0,0.014-0.019,0.048-0.057c0.042-0.032,0.088-0.075,0.131-0.117c0.599-0.514,1.273-1.113,2.061-1.792
c3.263-2.73,6.021-3.112,8.072-2.749c0,0,0.005,0,0.029,0.005c0.051,0.014,0.165,0.051,0.306,0.127
c0.109,0.061,0.194,0.137,0.269,0.231c0.146,0.179,0.226,0.405,0.221,0.641c-1.725,3.056-2.706,6.588-2.706,10.351
c0,11.67,9.464,21.129,21.134,21.129c3.989,0,7.725-1.103,10.912-3.027c0.231,0.071,0.434,0.221,0.571,0.448
c1.051,1.834,1.655,3.956,1.655,6.201c-0.019,6.875-5.588,12.429-12.445,12.429c-3.937-0.004-7.445-1.839-9.717-4.71
c-1.519-1.9-2.491-4.258-2.669-6.833c-0.038-0.523-0.491-0.915-1.005-0.915l-6.503-0.005c-0.57,0-1.042,0.458-1.023,1.038
c0.104,2.362,0.613,4.626,1.458,6.715c3.059,7.743,10.599,13.212,19.426,13.231c11.581,0.01,20.98-9.364,21.003-20.936
c0-4.64-1.513-8.931-4.069-12.397c-0.085-0.128-0.147-0.264-0.17-0.41c0.91-1.321,1.674-2.754,2.264-4.272
c0.028,0.071,0.061,0.141,0.093,0.212c0.077,0.179,0.152,0.358,0.227,0.533c0.09,0.212,0.188,0.414,0.288,0.618
c0.08,0.165,0.217,0.433,0.302,0.603c0.207,0.377,0.415,0.759,0.637,1.127c0.112,0.184,0.216,0.358,0.333,0.533
c0.213,0.321,0.425,0.632,0.642,0.938c0.203,0.278,0.41,0.552,0.622,0.816c0.402,0.5,0.83,0.981,1.269,1.443
c0.179,0.188,0.363,0.368,0.547,0.552c0.33,0.311,0.67,0.617,1.018,0.919c0.156,0.123,0.307,0.255,0.463,0.382
c2.178,1.74,4.701,3.065,7.455,3.867c0.193,0.056,0.396,0.112,0.589,0.16c0.269,0.061,0.523,0.127,0.788,0.179
c0.33,0.071,0.655,0.132,0.985,0.189c0.194,0.038,0.391,0.066,0.584,0.094c0.43,0.052,0.873,0.104,1.312,0.137
c0.061,0.009,0.122,0.009,0.179,0.014c0.061,0.009,0.128,0.009,0.184,0.009c0.424,0.024,0.849,0.038,1.278,0.038
c0.589,0,1.173-0.019,1.75-0.066c1.367-0.113,2.706-0.358,3.988-0.712l0.033-0.042c0.278-0.085,0.557-0.161,0.83-0.25
c0.189-0.062,0.382-0.133,0.562-0.203c0.173-0.057,0.348-0.127,0.508-0.193c0.161-0.071,0.335-0.133,0.496-0.203
c0.226-0.104,0.448-0.198,0.669-0.292c1.004-0.449,1.953-0.986,2.848-1.59c0.359-0.226,0.708-0.467,1.042-0.717
c0.165-0.136,0.34-0.268,0.5-0.4c1.387-1.099,2.599-2.395,3.664-3.801c0.067-0.085,0.132-0.16,0.198-0.245
c0.034-0.061,0.066-0.113,0.109-0.161c0.552-0.772,1.075-1.57,1.513-2.409c0.246-0.434,0.467-0.896,0.661-1.348
c0.098-0.203,0.183-0.401,0.263-0.604c0.052-0.104,0.08-0.198,0.123-0.292c0.137-0.373,0.269-0.731,0.396-1.095
c0.028-0.085,0.057-0.16,0.076-0.245c0.089-0.273,0.174-0.556,0.259-0.83c0.076-0.311,0.16-0.627,0.231-0.938
c0.047-0.175,0.08-0.349,0.109-0.533c0.061-0.268,0.113-0.542,0.155-0.825c0.005-0.052,0.019-0.113,0.028-0.174
c0.038-0.302,0.08-0.627,0.109-0.943c0.071-0.717,0.113-1.434,0.113-2.174c0-0.524-0.023-1.052-0.062-1.566
c0.039,0.038,0.077,0.066,0.123,0.095c0,0.009,0.01,0.009,0.01,0.009l0.014,0.005c0.038,0.023,0.052,0.042,0.09,0.052
c0.108,0.103,0.23,0.179,0.363,0.254c1.212,0.863,2.673,1.627,4.38,2.264c0.354,0.136,0.717,0.268,1.095,0.386l9.01,3.065
c5.706,1.882,7.409,3.103,7.272,5.182c-0.265,4.07-5.183,4.348-8.115,4.164c-0.538-0.023-1.114-0.085-1.674-0.198h-0.029
c-0.708-0.118-1.415-0.292-2.061-0.523c-0.179-0.08-0.349-0.151-0.551-0.241c-0.514-0.217-1.01-0.495-1.433-0.868
c-0.024-0.004-0.029-0.028-0.043-0.028c-0.203-0.16-0.411-0.32-0.627-0.504c-0.175-0.146-0.41-0.241-0.647-0.241h-8.774
c-0.713,0-1.212,0.741-0.939,1.396c2.056,4.918,7.431,7.677,16.061,8.228c11.354,0.727,18.993-3.621,19.488-11.09
C182.05,32.825,180.664,30.019,177.646,27.845 M36.259,32.462c-0.575,0.994-1.282,1.905-2.103,2.697l-0.08,0.099
c-0.038,0.028-0.066,0.056-0.099,0.085h-0.005c-0.999,0.924-2.141,1.692-3.39,2.239c-0.08,0.043-0.165,0.085-0.25,0.123
c-1.485,0.613-3.112,0.967-4.819,0.967c-6.149,0-11.246-4.437-12.26-10.299c-0.133-0.688-0.193-1.419-0.193-2.145
c0-6.88,5.573-12.44,12.453-12.44c0.678,0,1.334,0.053,1.99,0.161c5.922,0.957,10.43,6.092,10.43,12.279
C37.933,28.496,37.325,30.627,36.259,32.462 M140.083,27.034c-0.01,0.175-0.019,0.349-0.033,0.519
c-0.01,0.165-0.033,0.33-0.057,0.495v0.019v0.009c-0.005,0.014-0.01,0.028-0.01,0.047c0,0.01,0,0.024-0.004,0.034v0.023
c0,0.009-0.004,0.019-0.004,0.028c-0.024,0.194-0.057,0.387-0.09,0.576c-0.038,0.221-0.08,0.443-0.132,0.66
c-0.043,0.188-0.095,0.377-0.151,0.566c-0.029,0.113-0.061,0.221-0.099,0.335c-0.052,0.16-0.104,0.32-0.165,0.481
c-0.067,0.193-0.142,0.381-0.222,0.57c-1.457,3.48-4.451,6.158-8.134,7.177c-0.514,0.141-1.042,0.254-1.588,0.33
c-0.242,0.033-0.487,0.061-0.732,0.085c-0.142,0.009-0.278,0.019-0.42,0.023c-0.197,0.01-0.395,0.014-0.598,0.014h-0.099
c-0.147,0-0.288-0.004-0.435-0.009c-0.112-0.005-0.225-0.009-0.334-0.019c-0.028-0.005-0.056-0.005-0.085-0.005
c-0.056,0-0.113-0.009-0.165-0.014c-0.023,0-0.043-0.005-0.066-0.009c-0.104-0.005-0.212-0.015-0.315-0.033
c-0.077-0.005-0.152-0.014-0.222-0.028c-0.18-0.029-0.359-0.057-0.538-0.09c-0.532-0.099-1.056-0.231-1.571-0.406
c-0.173-0.047-0.348-0.108-0.518-0.174c-0.839-0.302-1.632-0.693-2.376-1.16c-0.123-0.076-0.241-0.156-0.358-0.236
c-0.005,0-0.005,0-0.005-0.005c-0.123-0.08-0.242-0.165-0.359-0.249c-0.118-0.085-0.236-0.175-0.349-0.264
c-0.344-0.269-0.674-0.561-0.986-0.863c-0.065-0.067-0.136-0.133-0.202-0.203c-0.085-0.085-0.17-0.175-0.255-0.264
c-0.023-0.028-0.052-0.062-0.08-0.09c-0.123-0.132-0.24-0.268-0.358-0.41c0-0.005-0.005-0.009-0.01-0.014
c-0.09-0.104-0.179-0.217-0.264-0.325c-0.174-0.213-0.335-0.444-0.486-0.661c-0.112-0.15-0.202-0.306-0.292-0.467
c-0.32-0.518-0.599-1.065-0.83-1.631c-0.047-0.099-0.089-0.203-0.127-0.307c-0.033-0.08-0.062-0.16-0.09-0.24h0.005
c-0.042-0.113-0.085-0.231-0.123-0.349c-0.744-0.797-3.357-1.41-6.582-1.495c-0.1-0.005-0.198-0.009-0.302-0.009
c-0.193-0.01-0.391-0.01-0.585-0.01c-4.088,0-7.427,0.821-7.677,1.863h-0.023c-0.312,0.877-0.731,1.711-1.227,2.485
c-1.093,1.688-2.579,3.089-4.328,4.079c-0.863,0.485-1.782,0.877-2.749,1.155c-0.378,0.104-0.768,0.189-1.16,0.259
c-0.453,0.081-0.933,0.137-1.405,0.17c-0.25,0.01-0.495,0.028-0.74,0.028c-0.217,0-0.429-0.018-0.632-0.028
c-0.232,0-0.434,0-0.642-0.038c-0.207-0.014-0.42-0.028-0.622-0.071c-1.565-0.235-3.022-0.754-4.338-1.499
c-0.811-0.471-1.57-1.023-2.259-1.66c-0.788-0.721-1.476-1.537-2.046-2.438c-1.241-1.928-1.966-4.243-1.966-6.724
c0.004-3.895,1.796-7.365,4.625-9.643c0.273-0.245,0.566-0.443,0.878-0.646c0.188-0.141,0.385-0.264,0.584-0.377
c0.118-0.09,0.255-0.16,0.391-0.231c0-0.014,0.038-0.014,0.042-0.019c1.067-0.58,2.222-1.004,3.443-1.24
c0.801-0.17,1.618-0.25,2.475-0.25c5.098,0,9.484,3.079,11.393,7.483h0.01c0.273,1.038,3.739,1.853,7.973,1.853
c0.189,0,0.382,0,0.571-0.009c0.066,0,0.127-0.005,0.193-0.005c2.702-0.061,5.013-0.462,6.253-1.028
c0.15-0.061,0.278-0.131,0.391-0.197c0.089-0.062,0.165-0.114,0.231-0.17c1.787-4.711,6.348-8.054,11.681-8.054
c5.011,0,9.335,2.952,11.321,7.209c0.028,0.053,0.052,0.104,0.075,0.161c0.043,0.085,0.08,0.17,0.118,0.259
c0.042,0.09,0.085,0.184,0.123,0.279c0.113,0.287,0.212,0.575,0.297,0.872c0.307,0.971,0.495,1.994,0.547,3.051
c0.01,0.216,0.014,0.443,0.014,0.665C140.097,26.695,140.093,26.865,140.083,27.034"/>
</svg>

Before

(image error) Size: 11 KiB

Binary file not shown.

Before

(image error) Size: 58 KiB

Binary file not shown.

Before

(image error) Size: 22 KiB

Some files were not shown because too many files have changed in this diff Show More