Skip to content

Commit 9b7ac47

Browse files
authored
Add audit history to Enterprise Edition (#202)
* Start fleshing out sqlite backend * Different direction * Some more sketch progress * More prgoress * Drop order * Closer * Factor in pageId to panels * At least one test passing, but generic inserts arent * Basic tests working * Refactoring ui state * UI is type compiling * Implement localstorage store * Refactor for this * Some basics working * Fix for fmt * Fixing up runner code * No need to build/push image twice * Switch to better-sqlite3 * Fix for tsc/format * Some issues building better-sqlite3 * Stub test * Unify server and desktop store * tsc fixes * More fixes * Fixes for in-memory * More fixes for in-memory * Drop more postgres * No need for project test * updateProject helper * tsc passing * Getting closer on tests * Most program tests passing! * All program tests passing * Encryption not yet working * More evalcontext * More cleanup * More fixes for tests * All but default project test working * Remove default project test for now * Drop exporter test for now * Fixes for http test * Fix for test format * Drop fmt * Drop rebuild step * No need to remove gp * Sketched out migration but tests failing weirdly * Store tests working * Fixes for panic-y library * Fix for tests * Just use existing settings file for now * Just drop dashboard and exporter for now * Fix for sql syntax * Start ee * Start sketching out ee * More progress on build script * Getting somewhere slowly * More of history auditing and crud sketched out * Setting up handlers for audit * More tsc progress * TypeScript is happy! * TypeScript is reasonable for ee code * Maybe getting somewhere * Auditing working * Auditable for both old and new * Basics of audit working * Start adding tests for audit * More progress on tests, maybe * Just use any * Closer to history tests passing * Add copyright * Tests for all updates/deletes * Bump jest settings * Fixes for format * Run tests and run copyright script * Update name * Update name * Add win/mac * At least something is working * Catch all exceptions * Hopefully fix for eval errors * tsc is ok * Errors working * Add prettier * Drop other actions for now * Closer * Again * Default project working on browser mode but eval results not working * tsc is happier * Copyright * Bump deps * Add back existing tests * More tests passing * Fix for http test * Drop some more deps * Bump deps * Fix macro test * Read as binary
1 parent 1995c1c commit 9b7ac47

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+5843
-1199
lines changed
Lines changed: 94 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,94 @@
1+
name: Run ee tests
2+
3+
on:
4+
pull_request:
5+
branches: [main]
6+
7+
jobs:
8+
test:
9+
runs-on: ubuntu-latest
10+
defaults:
11+
run:
12+
working-directory: ee
13+
14+
steps:
15+
- uses: actions/checkout@master
16+
with:
17+
ref: ${{ github.ref }}
18+
19+
# FROM: https://github.com/actions/cache/blob/main/examples.md#node---yarn
20+
- name: Get yarn cache directory path
21+
id: yarn-cache-dir-path
22+
run: echo "::set-output name=dir::$(yarn cache dir)"
23+
24+
- uses: actions/cache@v2
25+
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
26+
with:
27+
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
28+
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
29+
restore-keys: |
30+
${{ runner.os }}-yarn-
31+
32+
- run: cd .. && ./scripts/ci/prepare_linux.sh --integration-tests
33+
- run: cd .. && yarn
34+
- run: yarn
35+
- run: yarn format
36+
- run: yarn tsc
37+
- run: cd .. && ./scripts/fail_on_diff.sh
38+
- run: ./scripts/require_copyright.sh
39+
- run: yarn test
40+
41+
macos:
42+
runs-on: macos-latest
43+
44+
steps:
45+
- uses: actions/checkout@master
46+
with:
47+
ref: ${{ github.ref }}
48+
49+
# FROM: https://github.com/actions/cache/blob/main/examples.md#node---yarn
50+
- name: Get yarn cache directory path
51+
id: yarn-cache-dir-path
52+
run: echo "::set-output name=dir::$(yarn cache dir)"
53+
54+
- uses: actions/cache@v2
55+
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
56+
with:
57+
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
58+
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
59+
restore-keys: |
60+
${{ runner.os }}-yarn-
61+
62+
- run: ./scripts/ci/prepare_macos.sh
63+
- run: yarn
64+
working-directory: ee
65+
- run: yarn test
66+
working-directory: ee
67+
68+
windows:
69+
runs-on: windows-latest
70+
71+
steps:
72+
- uses: actions/checkout@master
73+
with:
74+
ref: ${{ github.ref }}
75+
76+
# FROM: https://github.com/actions/cache/blob/main/examples.md#node---yarn
77+
- name: Get yarn cache directory path
78+
id: yarn-cache-dir-path
79+
run: echo "::set-output name=dir::$(yarn cache dir)"
80+
81+
- uses: actions/cache@v2
82+
id: yarn-cache # use this to check for `cache-hit` (`steps.yarn-cache.outputs.cache-hit != 'true'`)
83+
with:
84+
path: ${{ steps.yarn-cache-dir-path.outputs.dir }}
85+
key: ${{ runner.os }}-yarn-${{ hashFiles('**/yarn.lock') }}
86+
restore-keys: |
87+
${{ runner.os }}-yarn-
88+
89+
- run: ./scripts/ci/prepare_windows.ps1
90+
shell: pwsh
91+
- run: yarn
92+
working-directory: ee
93+
- run: yarn test
94+
working-directory: ee

.github/workflows/releases.yml

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,27 @@ on:
55
types: [published]
66

77
jobs:
8+
build-server:
9+
runs-on: ubuntu-latest
10+
11+
steps:
12+
- uses: actions/checkout@master
13+
with:
14+
ref: ${{ github.ref }}
15+
16+
- run: ./scripts/ci/prepare_linux.sh
17+
- run: echo "GIT_TAG=`git tag --points-at HEAD`" >> $GITHUB_ENV
18+
- run: |
19+
echo "RELEASE_ID=`curl -H 'Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}' https://api.github.com/repos/multiprocessio/datastation/releases/tags/$GIT_TAG | jq '.id'`" >> $GITHUB_ENV
20+
- run: yarn release-server $GIT_TAG
21+
- name: Upload on release
22+
run: |
23+
curl --fail \
24+
-H "Authorization: Bearer ${{ secrets.GITHUB_TOKEN }}" \
25+
-H "Content-Type: application/zip" \
26+
--data-binary @./releases/datastation-server-x64-$GIT_TAG.zip \
27+
"https://uploads.github.com/repos/multiprocessio/datastation/releases/$RELEASE_ID/assets?name=datastation-server-x64-$GIT_TAG.zip"
28+
829
build-linux-desktop:
930
runs-on: ubuntu-latest
1031

LICENSE.md

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,8 @@
11
Copyright 2021-2022 Multiprocess Labs LLC
22

3+
* All content that resides under the "ee/" directory of this repository, if that directory exists, is licensed under the license defined in "ee/LICENSE.md".
4+
* Content outside of the above mentioned directories or restrictions above is available under the "Apache 2.0" license as defined below.
5+
36
Licensed under the Apache License, Version 2.0 (the "License");
47
you may not use this file except in compliance with the License.
58
You may obtain a copy of the License at
@@ -10,4 +13,4 @@ Unless required by applicable law or agreed to in writing, software
1013
distributed under the License is distributed on an "AS IS" BASIS,
1114
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1215
See the License for the specific language governing permissions and
13-
limitations under the License.
16+
limitations under the License.

0 commit comments

Comments
 (0)