Skip to content

Commit

Permalink
chore(release): Test v7.19.3 (#9469)
Browse files Browse the repository at this point in the history
* chore(env vars): Stripe vars moved to the Integrations section (#9427)

* chore: fix misleading `isLead` field name on `Team` (#9413)

* chore: fix misleading `isLead` field name on `Team`

The field indicates whether the viewer is the lead, but when used in a
query for a different user, the result could be read wrong.

* Fix Team.isLead dependencies

* feat: remove team template limit (#9424)

* update error message and increase template limit

* remove max team template limits

* remove canClone prop from CloneTemplate

* remove unused threshold

* remove unused threshold

* feat: Add Google calendar meeting series for recurrence (#9380)

* feat: Add recurrence to GCal events

* Fun with timezones

* fix: Increase the number of projects fetched per request from Atlassian (#9435)

We ran into timeouts in `getAllProjects`, presumably because we're doing
too many roundtrips. As a quick fix, increse the number of projects
fetched per request from 50 to 500.

* chore(deps): bump ip from 1.1.8 to 1.1.9 (#9442)

Bumps [ip](https://github.com/indutny/node-ip) from 1.1.8 to 1.1.9.
- [Commits](indutny/node-ip@v1.1.8...v1.1.9)

---
updated-dependencies:
- dependency-name: ip
  dependency-type: indirect
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>

* chore(release): release v7.17.0 (#9428)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* feat(standalone-deployment): Standalone host deployment improved and documented (#9445)

* Docker compose stack improved

* Remove unused containers from docker-compse and add useful comment on .env.example about PGSSLMODE

* Docker compose profiles added. Documentation extended on how to use the profiles to manage the stack.

* README fixed as docker compose up and down commands were not working

* Typo fixed and docker-compose command replaced by docker compose

* feat: support env-defined saml issuer for PPMIs (#9455)

* feat: support env-defined saml issuer for PPMIs

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* feat: support single SAML for entire tenant

Signed-off-by: Matt Krick <matt.krick@gmail.com>

---------

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore: Associate logs with traces (#9444)

* chore: Associate logs with traces

Add trace information to log output for server side log statements. This
does not include logging from code exclusively used for debugging,
deploying or development.

* Actually add the logger

* Fix DD_LOGS_INJECTION check

* chore(release): release v7.18.0 (#9450)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* chore: no force-push to prod (#9401)

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore(release): release v7.18.1 (#9459)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* feat: embedder service (#9417)

* feat: add embedder service

---------

Signed-off-by: Matt Krick <matt.krick@gmail.com>
Co-authored-by: Matt Krick <matt.krick@gmail.com>

* merge production to avoid force push (#9461)

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore(release): release v7.19.0 (#9460)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* fix: checkout prod before merging it (#9463)

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore(release): release v7.19.1 (#9464)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* fix: mrege origin/production strategy (#9465)

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore(release): release v7.19.2 (#9466)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

* fix: force push 5 (#9467)

Signed-off-by: Matt Krick <matt.krick@gmail.com>

* chore(release): release v7.19.3 (#9468)

Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Signed-off-by: Matt Krick <matt.krick@gmail.com>
Co-authored-by: Rafa <101704572+rafaelromcar-parabol@users.noreply.github.com>
Co-authored-by: Georg Bremer <github@dschoordsch.de>
Co-authored-by: Nick O'Ferrall <nickoferrall@gmail.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: parabol-release-bot[bot] <150284312+parabol-release-bot[bot]@users.noreply.github.com>
Co-authored-by: Matt Krick <matt.krick@gmail.com>
Co-authored-by: Jordan Husney <jordan.husney@gmail.com>
Co-authored-by: github-actions <github-actions@github.com>
  • Loading branch information
9 people authored Feb 28, 2024
1 parent 6a0ddb5 commit 5485425
Show file tree
Hide file tree
Showing 87 changed files with 2,687 additions and 193 deletions.
7 changes: 7 additions & 0 deletions .env.example
Original file line number Diff line number Diff line change
Expand Up @@ -8,12 +8,19 @@ SERVER_ID='1'
# Websocket port for the websocket server, only used in development (yarn dev)
SOCKET_PORT='3001'

# AI MODELS
AI_EMBEDDING_MODELS='[{"model": "text-embeddings-inference:llmrails/ember-v1", "url": "http://localhost:3040/"}]'
AI_GENERATION_MODELS='[{"model": "text-generation-inference:TheBloke/zephyr-7b-beta", "url": "http://localhost:3050/"}]'
AI_EMBEDDER_ENABLED='true'

# APPLICATION
# AMPLITUDE_WRITE_KEY='key_AMPLITUDE_WRITE_KEY'
# Enter a short url redirect service for invitations, it needs to redirecto to /invitation-link
# INVITATION_SHORTLINK='example.com'
# If true, all new orgs will default to being enterprise tier. Use for PPMIs
# IS_ENTERPRISE=false
# PPMI single tenant use only. Will set the SAML issuer to this value.
# SAML_ISSUER=''

# AUTHENTICATION
# AUTH_INTERNAL_DISABLED='false'
Expand Down
5 changes: 5 additions & 0 deletions .github/workflows/release-to-staging.yml
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,10 @@ jobs:
id-token: "write"
pull-requests: "write"
steps:
- name: Checkout production
uses: actions/checkout@v3
with:
ref: production
- name: Checkout
uses: actions/checkout@v3
- name: Setup environment variables
Expand Down Expand Up @@ -99,6 +103,7 @@ jobs:
git config user.name github-actions
git config user.email github-actions@github.com
git checkout -b "release/v${{ env.ACTION_VERSION }}"
git merge -s ours origin/production --allow-unrelated-histories
git push --set-upstream origin "release/v${{ env.ACTION_VERSION }}"
gh pr create \
--assignee ${{ github.actor }} \
Expand Down
2 changes: 1 addition & 1 deletion .release-please-manifest.json
Original file line number Diff line number Diff line change
@@ -1,3 +1,3 @@
{
".": "7.17.0"
".": "7.19.3"
}
48 changes: 48 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,54 @@ This project adheres to [Semantic Versioning](http://semver.org/).

This CHANGELOG follows conventions [outlined here](http://keepachangelog.com/).

## [7.19.3](https://github.com/ParabolInc/parabol/compare/v7.19.2...v7.19.3) (2024-02-28)


### Fixed

* force push 5 ([#9467](https://github.com/ParabolInc/parabol/issues/9467)) ([581f0cf](https://github.com/ParabolInc/parabol/commit/581f0cfa2255bbeb438c53b2b5f4d8ceb6a0b0cc))

## [7.19.2](https://github.com/ParabolInc/parabol/compare/v7.19.1...v7.19.2) (2024-02-28)


### Fixed

* mrege origin/production strategy ([#9465](https://github.com/ParabolInc/parabol/issues/9465)) ([9e90b9d](https://github.com/ParabolInc/parabol/commit/9e90b9df95b8505c0e1e50d4e8e4f18c73ef17cd))

## [7.19.1](https://github.com/ParabolInc/parabol/compare/v7.19.0...v7.19.1) (2024-02-27)


### Fixed

* checkout prod before merging it ([#9463](https://github.com/ParabolInc/parabol/issues/9463)) ([7bd8803](https://github.com/ParabolInc/parabol/commit/7bd880314f6f48c897a9a708b2d6435b257fae90))

## [7.19.0](https://github.com/ParabolInc/parabol/compare/v7.18.1...v7.19.0) (2024-02-27)


### Added

* embedder service ([#9417](https://github.com/ParabolInc/parabol/issues/9417)) ([55faa17](https://github.com/ParabolInc/parabol/commit/55faa17ada5b1bd49182a29341b3465a82d2ddfd))

## [7.18.1](https://github.com/ParabolInc/parabol/compare/v7.18.0...v7.18.1) (2024-02-27)


### Changed

* no force-push to prod ([#9401](https://github.com/ParabolInc/parabol/issues/9401)) ([6d46e1b](https://github.com/ParabolInc/parabol/commit/6d46e1b2aab6731493de2d2547c88ae3921393f0))

## [7.18.0](https://github.com/ParabolInc/parabol/compare/v7.17.0...v7.18.0) (2024-02-27)


### Added

* **standalone-deployment:** Standalone host deployment improved and documented ([#9445](https://github.com/ParabolInc/parabol/issues/9445)) ([61ba015](https://github.com/ParabolInc/parabol/commit/61ba015c8310a72b7e89c64be081cd2f399fc721))
* support env-defined saml issuer for PPMIs ([#9455](https://github.com/ParabolInc/parabol/issues/9455)) ([92ab5be](https://github.com/ParabolInc/parabol/commit/92ab5be298ceb19ca8718c67a0c9da8728b6b0bf))


### Changed

* Associate logs with traces ([#9444](https://github.com/ParabolInc/parabol/issues/9444)) ([c77925b](https://github.com/ParabolInc/parabol/commit/c77925b1c0e07afc428022008143b8b7f4002280))

## [7.17.0](https://github.com/ParabolInc/parabol/compare/v7.16.0...v7.17.0) (2024-02-21)


Expand Down
17 changes: 15 additions & 2 deletions docker/dev.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,8 +13,6 @@ services:
- /var/run/docker.sock:/var/run/docker.sock
- /proc/:/host/proc/:ro
- /sys/fs/cgroup:/host/sys/fs/cgroup:ro
- "./dd-conf.d:/etc/datadog-agent/conf.d/local.d/"
- "../dev/logs:/var/log/datadog/logs"
db:
image: rethinkdb:2.4.2
restart: unless-stopped
Expand Down Expand Up @@ -72,10 +70,25 @@ services:
- "8082:8081"
networks:
parabol-network:
text-embeddings-inference:
container_name: text-embeddings-inference
image: ghcr.io/huggingface/text-embeddings-inference:cpu-0.6
command:
- "--model-id=llmrails/ember-v1"
platform: linux/x86_64
hostname: text-embeddings-inference
restart: unless-stopped
ports:
- "3040:80"
volumes:
- text-embeddings-inference-data:/data
networks:
parabol-network:
networks:
parabol-network:
volumes:
redis-data: {}
rethink-data: {}
postgres-data: {}
pgadmin-data: {}
text-embeddings-inference-data: {}
1 change: 1 addition & 0 deletions docker/parabol-ubi/docker-host-st/.env.example
Original file line number Diff line number Diff line change
@@ -1 +1,2 @@
# See https://github.com/ParabolInc/parabol/blob/master/.env.example
# DO NOT SET PGSSLMODE to an empty value. Postgres will not be able to start.
33 changes: 30 additions & 3 deletions docker/parabol-ubi/docker-host-st/README.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,42 @@
# Docker Host Single Tenant (ST)

To run the Parabol UBI in single tenant mode (e.g. simple docker-compose on a docker host).
To run Parabol in single tenant mode (e.g. simple docker-compose on a docker host).

1. Build your Parabol UBI using instructions in `docker/ubi/docker-build/README.md`
2. Create a working `.env` from `.env.example`
3. Update docker-compose.yaml `image: #image:tag` with your built image tag from `step (1.)`
4. Run `docker-compose up -d` to deploy the local stack. You can run `docker-compose down` to terminate the local stack
5. Check logs via command `docker logs <name>-app-1` and wait for the following output to appear
4. Run `docker compose --profile databases --profile parabol up -d` to deploy the local stack. You can run `docker compose --profile databases --profile parabol down` to terminate the local stack
5. Check logs via command `docker logs <name> -f` and wait for the following output to appear

```shell
🔥🔥🔥 Server ID: 0. Ready for Sockets: Port 3000 🔥🔥🔥
💧💧💧 Server ID: 0. Ready for GraphQL Execution 💧💧💧
💧💧💧 Server ID: 01. Ready for GraphQL Execution 💧💧💧
```

## Upgrade Parabol version

1. Edit the `docker-compose.yaml` and change the `#image:tag` changing the tag. Ex: from `v7.15.0` to `v7.15.2`.
2. (optional) In a different terminal, run `docker compose logs -f` to follow the upgrade.
3. Run `docker compose --profile databases --profile parabol up -d`. It will start the `pre-deploy` and, once it is done successfully, then it will stop and recreate the `web-server` and `gql-executor` with the new version of the image. **This step implies a downtime**.
4. Verify the application is still up and running.

## Running Chronos

Chronos isn't started by default. If it needs to run, it must be managed using `docker compose --profile databases --profile parabol --profile chronos up`.

This will run `pre-deploy` and thus it will recreate the `web-server` and the `gql-executor`.

## Database debug

Some tools are available to debug the databases is needed:

- pgadmin
- redis-commander

To operate them use `docker compose up --profile databases --profile database-debug`.

## Running the whole stack

- Start the whole stack: `docker compose --profile databases --profile parabol --profile database-debug --profile chronos up -d`.
- Stop the stack: `docker compose --profile databases --profile parabol --profile database-debug --profile chronos down`
156 changes: 135 additions & 21 deletions docker/parabol-ubi/docker-host-st/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -1,51 +1,165 @@
version: '3.7'
version: '3.9'

services:
db:
image: rethinkdb:latest
postgres:
container_name: postgres
profiles: ["databases"]
image: postgres:15.4
restart: always
env_file: .env
environment:
- PGUSER=$POSTGRES_USER
ports:
- '5432:5432'
volumes:
- './data/postgres/pgdata:/var/lib/postgresql/data'
healthcheck:
test: ["CMD-SHELL", "pg_isready", "-d", "$POSTGRES_DB", "-U", "$POSTGRES_USER"]
interval: 10s
timeout: 5s
retries: 5
networks:
- parabol-network
pgadmin:
profiles: ["database-debug"]
container_name: pgadmin
image: dpage/pgadmin4:8.3
depends_on:
postgres:
condition: service_healthy
env_file: .env
ports:
- "5050:80"
networks:
- parabol-network
rethinkdb:
container_name: rethinkdb
profiles: ["databases"]
image: rethinkdb:2.4.2
restart: always
ports:
- '8080:8080'
- '29015:29015'
- '28015:28015'
volumes:
- ./rethink-data:/data
- ./data/rethink:/data
networks:
- parabol-network
postgres:
image: postgres:15.4
redis:
container_name: redis
profiles: ["databases"]
image: redis:7.0-alpine
healthcheck:
test: "[ $$(redis-cli ping) = 'PONG' ]"
interval: 10s
timeout: 5s
retries: 5
restart: always
env_file: .env
ports:
- '5432:5432'
- '6379:6379'
volumes:
- './postgres.conf:/usr/local/etc/postgres/postgres.conf'
- './postgres-data/pgdata:/var/lib/postgresql/data'
command: 'postgres -c config_file=/usr/local/etc/postgres/postgres.conf'
- ./data/redis:/data
networks:
- parabol-network
redis:
image: redis
redis-commander:
profiles: ["database-debug"]
container_name: redis-commander
image: ghcr.io/joeferner/redis-commander:0.8.1
depends_on:
redis:
condition: service_healthy
restart: always
environment:
- REDIS_HOSTS=local:redis:6379
ports:
- '6379:6379'
- "8081:8081"
networks:
- parabol-network
pre-deploy:
container_name: pre-deploy
profiles: ["parabol"]
image: us-central1-docker.pkg.dev/prbl-tooling/parabol-production/parabol:v7.15.2
command: bash -c "node dist/preDeploy.js"
env_file: .env
environment:
- SERVER_ID=0
volumes:
- ./redis-data:/data
- './.env:/parabol/.env'
depends_on:
rethinkdb:
condition: service_started
postgres:
condition: service_healthy
redis:
condition: service_healthy
networks:
- parabol-network
app:
image: #image:tag
chronos:
container_name: chronos
profiles: ["chronos"]
image: us-central1-docker.pkg.dev/prbl-tooling/parabol-production/parabol:v7.15.2
restart: always
command: bash -c "node dist/chronos.js"
env_file: .env
command: bash -c "yarn predeploy && NODE_ENV=production && yarn start"
environment:
- SERVER_ID=1
volumes:
- './.env:/parabol/.env'
depends_on:
pre-deploy:
condition: service_completed_successfully
rethinkdb:
condition: service_started
postgres:
condition: service_healthy
redis:
condition: service_healthy
networks:
- parabol-network
web-server:
container_name: web-server
profiles: ["parabol"]
image: us-central1-docker.pkg.dev/prbl-tooling/parabol-production/parabol:v7.15.2
restart: always
command: bash -c "node dist/web.js"
env_file: .env
environment:
- SERVER_ID=5
ports:
- '3000:3000'
volumes:
- './.env:/parabol/.env'
depends_on:
- db
- redis
- postgres
pre-deploy:
condition: service_completed_successfully
rethinkdb:
condition: service_started
postgres:
condition: service_healthy
redis:
condition: service_healthy
networks:
- parabol-network
gql-executor:
container_name: gql-executor
profiles: ["parabol"]
image: us-central1-docker.pkg.dev/prbl-tooling/parabol-production/parabol:v7.15.2
restart: always
command: bash -c "node dist/gqlExecutor.js"
env_file: .env
environment:
- SERVER_ID=10
volumes:
- './.env:/parabol/.env'
depends_on:
pre-deploy:
condition: service_completed_successfully
rethinkdb:
condition: service_started
postgres:
condition: service_healthy
redis:
condition: service_healthy
networks:
- parabol-network
networks:
Expand Down
1 change: 0 additions & 1 deletion docker/parabol-ubi/docker-host-st/postgres.conf

This file was deleted.

6 changes: 3 additions & 3 deletions package.json
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
"description": "An open-source app for building smarter, more agile teams.",
"author": "Parabol Inc. <love@parabol.co> (http://github.com/ParabolInc)",
"license": "AGPL-3.0",
"version": "7.17.0",
"version": "7.19.3",
"repository": {
"type": "git",
"url": "https://github.com/ParabolInc/parabol"
Expand Down Expand Up @@ -103,8 +103,8 @@
"html-webpack-plugin": "^5.5.0",
"husky": "^7.0.4",
"jscodeshift": "^0.14.0",
"kysely": "^0.26.3",
"kysely-codegen": "^0.10.0",
"kysely": "^0.27.2",
"kysely-codegen": "^0.11.0",
"lerna": "^6.4.1",
"mini-css-extract-plugin": "^2.7.2",
"minimist": "^1.2.5",
Expand Down
Loading

0 comments on commit 5485425

Please sign in to comment.