From 9909ae9f06dabd30e1edc1ec5c3d8973d5dcf733 Mon Sep 17 00:00:00 2001 From: petruki <31597636+petruki@users.noreply.github.com> Date: Sat, 18 Nov 2023 15:54:54 -0800 Subject: [PATCH] Removed unused module - updated CI manifests --- .env-cmdrc-template | 1 - .github/workflows/master.yml | 64 +++++++++++++------------- README.md | 1 + docker-compose.yml | 1 - src/helpers/permission.js | 89 ------------------------------------ 5 files changed, 33 insertions(+), 123 deletions(-) delete mode 100644 src/helpers/permission.js diff --git a/.env-cmdrc-template b/.env-cmdrc-template index c414d3f..e4ddeaf 100644 --- a/.env-cmdrc-template +++ b/.env-cmdrc-template @@ -12,7 +12,6 @@ "RELAY_BYPASS_HTTPS": true, "RELAY_BYPASS_VERIFICATION": true, "METRICS_ACTIVATED": true, - "METRICS_MAX_PAGE": 50, "REGEX_MAX_TIMEOUT": 3000, "REGEX_MAX_BLACLIST": 50, "MAX_REQUEST_PER_MINUTE": 0, diff --git a/.github/workflows/master.yml b/.github/workflows/master.yml index 948827d..94c7a53 100644 --- a/.github/workflows/master.yml +++ b/.github/workflows/master.yml @@ -84,35 +84,35 @@ jobs: platforms: linux/amd64,linux/arm64 tags: trackerforce/switcher-resolver-node:latest - # update-kustomize: - # name: Deploy - # needs: [ docker ] - # runs-on: ubuntu-latest - - # steps: - # - name: Checkout - # uses: actions/checkout@v3 - # with: - # ref: 'master' - - # - name: Checkout Kustomize - # uses: actions/checkout@v3 - # with: - # token: ${{ secrets.ARGOCD_PAT }} - # repository: switcherapi/switcher-deployment - # ref: master - - # - name: Set Image - # uses: stefanprodan/kube-tools@v1 - # with: - # kubectl: 1.24.0 - # kustomize: 4.5.4 - # command: | - # cd switcher-resolver-node/base - # echo RELEASE_TIME=`date` > environment-properties.env - # kustomize edit set image trackerforce/switcher-resolver-node:latest=trackerforce/switcher-resolver-node@${{ needs.docker.outputs.digest }} - # git config --global user.email "${{ github.actor }}@users.noreply.github.com" - # git config --global user.name "${{ github.actor }}" - # git add . - # git commit -m "[argocd] switcher-resolver-node: ${{ needs.docker.outputs.digest }}" - # git push \ No newline at end of file + update-kustomize: + name: Deploy + needs: [ docker ] + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v3 + with: + ref: 'master' + + - name: Checkout Kustomize + uses: actions/checkout@v3 + with: + token: ${{ secrets.ARGOCD_PAT }} + repository: switcherapi/switcher-deployment + ref: master + + - name: Set Image + uses: stefanprodan/kube-tools@v1 + with: + kubectl: 1.24.0 + kustomize: 4.5.4 + command: | + cd switcher-resolver-node/base + echo RELEASE_TIME=`date` > environment-properties.env + kustomize edit set image trackerforce/switcher-resolver-node:latest=trackerforce/switcher-resolver-node@${{ needs.docker.outputs.digest }} + git config --global user.email "${{ github.actor }}@users.noreply.github.com" + git config --global user.name "${{ github.actor }}" + git add . + git commit -m "[argocd] switcher-resolver-node: ${{ needs.docker.outputs.digest }}" + git push \ No newline at end of file diff --git a/README.md b/README.md index 2d49e65..d5997cf 100644 --- a/README.md +++ b/README.md @@ -11,6 +11,7 @@ Resolver Node for Component Switchers
[![Quality Gate Status](https://sonarcloud.io/api/project_badges/measure?project=switcherapi_switcher-resolver-node&metric=alert_status)](https://sonarcloud.io/dashboard?id=switcherapi_switcher-resolver-node) [![Known Vulnerabilities](https://snyk.io/test/github/switcherapi/switcher-resolver-node/badge.svg)](https://snyk.io/test/github/switcherapi/switcher-resolver-node) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) +[![Docker Hub](https://img.shields.io/docker/pulls/trackerforce/switcher-resolver-node.svg)](https://hub.docker.com/r/trackerforce/switcher-resolver-node) [![Slack: Switcher-HQ](https://img.shields.io/badge/slack-@switcher/hq-blue.svg?logo=slack)](https://switcher-hq.slack.com/) diff --git a/docker-compose.yml b/docker-compose.yml index 86d3fbc..eec5bcb 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -26,7 +26,6 @@ services: - RELAY_BYPASS_HTTPS=${RELAY_BYPASS_HTTPS} - RELAY_BYPASS_VERIFICATION=${RELAY_BYPASS_VERIFICATION} - METRICS_ACTIVATED=${METRICS_ACTIVATED} - - METRICS_MAX_PAGE=${METRICS_MAX_PAGE} - REGEX_MAX_TIMEOUT=${REGEX_MAX_TIMEOUT} - REGEX_MAX_BLACLIST=${REGEX_MAX_BLACLIST} - MAX_REQUEST_PER_MINUTE=${MAX_REQUEST_PER_MINUTE} diff --git a/src/helpers/permission.js b/src/helpers/permission.js deleted file mode 100644 index 84e6016..0000000 --- a/src/helpers/permission.js +++ /dev/null @@ -1,89 +0,0 @@ -import { ActionTypes, RouterTypes } from '../models/permission'; -import { getPermission, getPermissions } from '../services/permission'; - -export async function verifyPermissions(team, element, actions, routerType, environment) { - actions.push(ActionTypes.ALL); - - const permission = await getPermission({ - _id: { $in: team.permissions }, - action: { $in: actions }, - active: true, - router: { $in: [routerType, RouterTypes.ALL] } - }); - - if (!permission || !verifyEnvironment(permission, environment)) { - return undefined; - } - - return verifyIdentifiers(permission, element); -} - -export async function verifyPermissionsCascade(team, element, actions, routerType, environment) { - let orStatement = []; - if (routerType === RouterTypes.DOMAIN) { - orStatement = [ - { router: routerType }, - { router: RouterTypes.GROUP }, - { router: RouterTypes.CONFIG }, - { router: RouterTypes.STRATEGY }, - { router: RouterTypes.ALL } - ]; - } else if (routerType === RouterTypes.GROUP) { - orStatement = [ - { router: routerType }, - { router: RouterTypes.CONFIG }, - { router: RouterTypes.STRATEGY }, - { router: RouterTypes.ALL } - ]; - } else if (routerType === RouterTypes.CONFIG || routerType === RouterTypes.STRATEGY) { - orStatement = [ - { router: routerType }, - { router: RouterTypes.STRATEGY }, - { router: RouterTypes.ALL } - ]; - } - - actions.push(ActionTypes.ALL); - const foundPermission = await getPermissions({ - _id: { $in: team.permissions }, - action: { $in: actions }, - active: true, - $or: orStatement - }); - - const matchedPermission = foundPermission.filter(value => value.router === routerType); - if (matchedPermission.length && verifyEnvironment(matchedPermission[0], environment)) { - return verifyIdentifiers(matchedPermission[0], element); - } else if (foundPermission[0] && verifyEnvironment(foundPermission[0], environment)) { - return element; - } - - return undefined; -} - -function verifyIdentifiers(permission, element) { - if (!permission.identifiedBy) { - return element; - } - - if (Array.isArray(element)) { - if (permission.values.length) { - element = element.filter(child => permission.values.includes(child[`${permission.identifiedBy}`])); - if (element.length) { - return element; - } - } - } else if (permission.values.includes(element[`${permission.identifiedBy}`])) { - return element; - } - - return undefined; -} - -function verifyEnvironment(permission, environment) { - if (permission.environments?.length) { - return environment && permission.environments.includes(environment); - } - - return true; -} \ No newline at end of file