From 5eb85557c2f65d7bef0eddca50ea46e67b50ee2e Mon Sep 17 00:00:00 2001 From: Kasra Bigdeli Date: Fri, 21 Apr 2023 08:40:49 -0700 Subject: [PATCH] Deleted Whoops as it does not work properly https://github.com/caprover/one-click-apps/pull/298\#issuecomment-1516028802 --- public/v4/apps/whoopsmonitor.yml | 184 ------------------------------ public/v4/logos/whoopsmonitor.png | Bin 22542 -> 0 bytes 2 files changed, 184 deletions(-) delete mode 100644 public/v4/apps/whoopsmonitor.yml delete mode 100644 public/v4/logos/whoopsmonitor.png diff --git a/public/v4/apps/whoopsmonitor.yml b/public/v4/apps/whoopsmonitor.yml deleted file mode 100644 index e288e82..0000000 --- a/public/v4/apps/whoopsmonitor.yml +++ /dev/null @@ -1,184 +0,0 @@ -captainVersion: 4 -services: - $$cap_appname-redis: - caproverExtra: - notExposeAsWebApp: 'true' - image: 'bitnami/redis:6.0.8-debian-10-r6' - environment: - REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD - volumes: - - $$cap_appname-redis-data:/bitnami - - $$cap_appname-mongodb: - caproverExtra: - notExposeAsWebApp: 'true' - image: bitnami/mongodb:4.4.1-debian-10-r8 - ports: - - '27017:27017' - volumes: - - $$cap_appname-mongodb-data:/bitnami - environment: - MONGODB_ROOT_PASSWORD: $$cap_APP_MONGODB_ROOT_PASSWORD - MONGODB_DATABASE: $$cap_APP_MONGODB_DATABASE - MONGODB_USERNAME: $$cap_APP_MONGODB_USERNAME - MONGODB_PASSWORD: $$cap_APP_MONGODB_PASSWORD - - $$cap_appname-api: - caproverExtra: - containerHttpPort: '1337' - restart: always - volumes: - - /var/run/docker.sock:/var/run/docker.sock:rw - ports: - - '1337:1337' - image: ghcr.io/whoopsmonitor/whoopsmonitor/api:$$cap_APP_VERSION - environment: - NODE_ENV: production - CONFIG_CORS_ALLOW_ORIGINS: '*' - APP_PASSWORD: $$cap_APP_PASSWORD - MONGO_CONNECTION: mongodb://$$cap_APP_MONGODB_USERNAME:$$cap_APP_MONGODB_PASSWORD@srv-captain--$$cap_appname-mongodb:27017/$$cap_APP_MONGODB_DATABASE?authSource=$$cap_APP_MONGODB_DATABASE - APP_DATA_ENCRYPTION_KEY: $$cap_APP_DATA_ENCRYPTION_KEY - APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD - APP_REDIS_CONNECTION_HOST: srv-captain--$$cap_appname-redis - APP_REDIS_CONNECTION_PORT: 6379 - APP_TOKEN: $$cap_APP_TOKEN - APP_QUEUE_NAME_EXECUTE_CHECK: execute-check - APP_QUEUE_NAME_CLEANUP_CHECK_STATUS: cleanup-check-status - depends_on: - - $$cap_appname-mongodb - - $$cap_appname-redis - - $$cap_appname-monitor: - restart: always - image: ghcr.io/whoopsmonitor/whoopsmonitor/monitor:$$cap_APP_VERSION - ports: - - '8080:80' - environment: - NODE_ENV: production - API_TOKEN: $$cap_APP_TOKEN - APP_API_URL: $$cap_APP_API_URL - depends_on: - - $$cap_appname-mongodb - - $$cap_appname-redis - - $$cap_appname-api - - $$cap_appname-worker: - caproverExtra: - notExposeAsWebApp: 'true' - restart: always - volumes: - - /var/run/docker.sock:/var/run/docker.sock:rw - - $$cap_appname-worker-data:/whoopsmonitor-worker - image: ghcr.io/whoopsmonitor/whoopsmonitor/worker:$$cap_APP_VERSION - environment: - NODE_ENV: production - APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD - APP_REDIS_HOST: srv-captain--$$cap_appname-redis - APP_REDIS_PORT: 6379 - APP_API_URL: http://srv-captain--$$cap_appname-api:1337 - APP_QUEUE_NAME_EXECUTE_CHECK: execute-check - APP_QUEUE_NAME_CLEANUP_CHECK_STATUS: cleanup-check-status - APP_QUEUE_NAME_ALERTING: alerting - APP_TOKEN: $$cap_APP_TOKEN - depends_on: - - $$cap_appname-mongodb - - $$cap_appname-redis - - $$cap_appname-api - - $$cap_appname-alerting: - caproverExtra: - notExposeAsWebApp: 'true' - restart: always - volumes: - - /var/run/docker.sock:/var/run/docker.sock:rw - image: ghcr.io/whoopsmonitor/whoopsmonitor/alerting:1.0 - environment: - NODE_ENV: production - APP_REDIS_PASSWORD: $$cap_APP_REDIS_PASSWORD - APP_REDIS_HOST: srv-captain--$$cap_appname-redis - APP_REDIS_PORT: 6379 - APP_API_URL: http://srv-captain--$$cap_appname-api:1337 - APP_QUEUE_NAME_ALERTING: alerting - APP_TOKEN: $$cap_APP_TOKEN - depends_on: - - $$cap_appname-mongodb - - $$cap_appname-redis - - $$cap_appname-api - - $$cap_appname-image-metadata: - caproverExtra: - notExposeAsWebApp: 'true' - restart: always - volumes: - - /var/run/docker.sock:/var/run/docker.sock:rw - image: ghcr.io/whoopsmonitor/whoopsmonitor/image-metadata:1.0 - environment: - NODE_ENV: production - API_URL: http://srv-captain--$$cap_appname-api:1337 - APP_TOKEN: $$cap_APP_TOKEN - depends_on: - - $$cap_appname-mongodb - - $$cap_appname-redis - - $$cap_appname-api - -caproverOneClickApp: - variables: - - label: Version - description: Application version, currently 1.0 - defaultValue: '1.0' - id: $$cap_APP_VERSION - - - label: '* External API URL' - description: API URL that is availaible from outside, like via browser. You can re-enter this value later but it is mandatory for "monitor" service. - defaultValue: 'https://' - id: $$cap_APP_API_URL - - - label: Redis Password - description: Redis password. - defaultValue: $$cap_gen_random_hex(32) - id: $$cap_APP_REDIS_PASSWORD - - - label: Mongo - root password - description: Root password for Mongo DB. - defaultValue: $$cap_gen_random_hex(32) - id: $$cap_APP_MONGODB_ROOT_PASSWORD - - label: Mongo - database username - description: Mongo DB username. - defaultValue: $$cap_gen_random_hex(32) - id: $$cap_APP_MONGODB_USERNAME - - label: Mongo - database password - description: Mongo DB password. - defaultValue: $$cap_gen_random_hex(32) - id: $$cap_APP_MONGODB_PASSWORD - - label: Mongo - database name - description: Name of the database. - defaultValue: $$cap_gen_random_hex(32) - id: $$cap_APP_MONGODB_DATABASE - - - label: Application Password - description: Admin for your application. There is no account name. Just the password. - defaultValue: $$cap_gen_random_hex(16) - id: $$cap_APP_PASSWORD - - label: Encryption key - description: Sensitive data stored in Whoops Monitor are all encrypted. It is a base64 key of some string. You should change the default value. - defaultValue: a3psdWpZdU40WG9zZTRPVHNpdXkxYTlNS0JqRTdZZUs= - id: $$cap_APP_DATA_ENCRYPTION_KEY - - label: API token - description: API token that is used for securing the communication between API and external services. - defaultValue: $$cap_gen_random_hex(64) - id: $$cap_APP_TOKEN - - displayName: Whoops Monitor - isOfficial: true - description: A monitoring tool that gives you clarity over your application landscape. - documentation: https://github.com/whoopsmonitor/whoopsmonitor - instructions: - start: |- - A monitoring tool that gives you clarity over your application landscape. - GitHub: https://github.com/whoopsmonitor/whoopsmonitor - end: |- - You're done! 😄 - - Your service is available at http://$$cap_appname.$$cap_root_domain - - The password is $$cap_APP_PASSWORD diff --git a/public/v4/logos/whoopsmonitor.png b/public/v4/logos/whoopsmonitor.png deleted file mode 100644 index 0cd5f40cbb6461fa868a39e51f7489a9b990c1b3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 22542 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