diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 0000000..61b9987 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,12 @@ +# These are supported funding model platforms + +github: [oskardudycz] +patreon: # Replace with a single Patreon username +open_collective: # Replace with a single Open Collective username +ko_fi: # Replace with a single Ko-fi username +tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel +community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry +liberapay: # Replace with a single Liberapay username +issuehunt: # Replace with a single IssueHunt username +otechie: # Replace with a single Otechie username +custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] diff --git a/.github/workflows/build_and_test.yml b/.github/workflows/build_and_test.yml new file mode 100644 index 0000000..0f79921 --- /dev/null +++ b/.github/workflows/build_and_test.yml @@ -0,0 +1,58 @@ +name: Build and test Sample - WebApi with Express.js and EventStoreDB + +on: + # run it on push to the default repository branch + push: + branches: [main] + # run it during pull request + pull_request: + + # Allows you to run this workflow manually from the Actions tab + workflow_dispatch: + +jobs: + build-and-test-code: + name: Build application code + # use system defined below in the tests matrix + runs-on: ubuntu-latest + + steps: + - name: Check Out Repo + uses: actions/checkout@v4 + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version-file: ./.nvmrc + cache: 'npm' + cache-dependency-path: './package-lock.json' + + - name: Install dependencies + run: npm ci + + - name: Build TS + run: npm run build:ts + + - name: Run linting (ESlint and Prettier) + run: npm run lint + + - name: Build + run: npm run build + + - name: Test + run: npm run test + + - name: Set up Docker Buildx + id: buildx + uses: docker/setup-buildx-action@v2 + + - name: Build Docker + id: docker_build + uses: docker/build-push-action@v4 + with: + context: './samples/webApi/expressjs-with-esdb' + push: false + tags: emmett.esdb.sample:latest + + - name: Image digest + run: echo ${{ steps.docker_build.outputs.digest }}