Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

1.0 #38

Merged
merged 104 commits into from
Dec 3, 2024
Merged

1.0 #38

Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
104 commits
Select commit Hold shift + click to select a range
c226239
Example Bank API
PSNAppz Aug 4, 2024
971a78e
Example Bank Celery
PSNAppz Aug 4, 2024
85ebef2
Example Bank Models
PSNAppz Aug 4, 2024
b0d9cf8
Merge pull request #1 from PSNAppz/develop
venky-ganapathy Aug 5, 2024
4d76588
Mt940 Writer Helper
PSNAppz Aug 5, 2024
5de6898
Account Statement
PSNAppz Aug 5, 2024
429414f
Pre-commit and minor fixes
PSNAppz Aug 5, 2024
9a56964
Pre-commit and minor fixes
PSNAppz Aug 5, 2024
53232af
Pre-commit and minor fixes
PSNAppz Aug 5, 2024
28ba765
Add celery_app.py
PSNAppz Aug 5, 2024
1e580f4
remove .idea folder
PSNAppz Aug 5, 2024
06a3c7b
Fix Formating for Mt940 Writer
PSNAppz Aug 6, 2024
092efa3
Add InitiatePaymentBatchRequest model
PSNAppz Aug 7, 2024
dc0624c
Initiate payments in batches
PSNAppz Aug 7, 2024
e665fde
Pre-commit fixes
PSNAppz Aug 7, 2024
3b8eb31
Add logging to all methods
PSNAppz Aug 7, 2024
1cdfdd6
add example env file
PSNAppz Aug 7, 2024
01c9268
add example env file
PSNAppz Aug 7, 2024
5166bb0
Refactor models
PSNAppz Aug 7, 2024
ec51c5d
Refactor schemas
PSNAppz Aug 7, 2024
1fc0d37
Merge pull request #2 from PSNAppz/develop
venky-ganapathy Aug 8, 2024
f4ebb8b
Example Bank API Docker Publish
PSNAppz Aug 12, 2024
8a52184
Example Bank API Workflows
PSNAppz Aug 12, 2024
8c96a1f
Merge pull request #3 from PSNAppz/develop
venky-ganapathy Aug 12, 2024
bddae06
Example Bank API Dockerfile fix
PSNAppz Aug 22, 2024
2584099
Example Bank API OpenAPI Workflow fix
PSNAppz Aug 22, 2024
f4c26fb
Example Bank API Celery Dockerfile fix
PSNAppz Aug 22, 2024
99f47b0
Merge pull request #4 from PSNAppz/develop
venky-ganapathy Aug 22, 2024
19cbd88
Example Bank API Celery Dockerfile fix
PSNAppz Aug 22, 2024
7dbdbfc
Merge pull request #5 from PSNAppz/develop
venky-ganapathy Aug 22, 2024
fe26685
Move redis urls to env
PSNAppz Aug 22, 2024
69af117
Merge pull request #6 from PSNAppz/develop
venky-ganapathy Aug 22, 2024
3b1c21a
Remove controller init from celery project app.py
PSNAppz Aug 22, 2024
83ec43c
Pre-commit fix
PSNAppz Aug 22, 2024
315ee19
Merge pull request #7 from PSNAppz/develop
venky-ganapathy Aug 22, 2024
a8580a2
Update celery worker to listen to g2p_bridge_celery_worker_tasks
PSNAppz Aug 26, 2024
cfa904f
Merge pull request #8 from PSNAppz/develop
shibu-narayanan Aug 26, 2024
a72d2c4
Fix error in initiate_payment_batch_request
PSNAppz Aug 26, 2024
9f6c46e
pre-commit fixes
PSNAppz Aug 26, 2024
c0a1e02
Merge pull request #9 from PSNAppz/develop
shibu-narayanan Aug 26, 2024
b70abdd
Update payment status enum to SUCCESS
PSNAppz Aug 26, 2024
6a8c255
Merge pull request #10 from PSNAppz/develop
shibu-narayanan Aug 27, 2024
c1feab7
Move celery config to env
PSNAppz Aug 27, 2024
3b98317
Pre-commit issues fix
PSNAppz Aug 27, 2024
6bca9df
Merge pull request #11 from PSNAppz/develop
lalithkota Aug 27, 2024
27af3fa
Call back upload statement API after account statement is generated
PSNAppz Sep 15, 2024
ee89392
Pre-commit fix
PSNAppz Sep 16, 2024
0e5757a
Merge pull request #12 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
e0b19ef
Process credit transaction in bank simulator
PSNAppz Sep 16, 2024
d42185d
Merge pull request #13 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
454b031
Update dependency in example-bank
PSNAppz Sep 16, 2024
e7f2f51
Merge pull request #14 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
89f88fa
Fix error in process_payments_worker
PSNAppz Sep 16, 2024
3ee7192
Merge pull request #15 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
88f8770
Add account_holder_name while creating new account
PSNAppz Sep 16, 2024
c3edf6d
Merge pull request #16 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
cbfe2ae
Add account_currency while creating new account
PSNAppz Sep 16, 2024
5d78aa7
Merge pull request #17 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
41987b6
Fix update_account_for_credit in generate_failures method
PSNAppz Sep 16, 2024
4e22d9f
Roll back session in case of exception
PSNAppz Sep 16, 2024
c834a5e
Merge pull request #18 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
6cb1dd3
Update fund block only for DEBIT transactions
PSNAppz Sep 16, 2024
cba6d8e
Merge pull request #19 from PSNAppz/develop
venky-ganapathy Sep 16, 2024
7add623
Added USSD controller
tahzeer Sep 16, 2024
2a3002f
Merge branch '1.0.0' of https://github.com/tahzeer/openg2p-g2p-bridge…
tahzeer Sep 16, 2024
aaedd29
Merge pull request #20 from tahzeer/1.0.0
venky-ganapathy Sep 16, 2024
d43e55a
Pre-commit fixes
PSNAppz Sep 16, 2024
dc09dd3
Merge pull request #21 from PSNAppz/1.0.0
venky-ganapathy Sep 16, 2024
e3dfe46
Fix credit account details
PSNAppz Sep 17, 2024
1d11c67
Create account statement after processing payment
PSNAppz Sep 17, 2024
1b94a2c
Pre-commit fixes
PSNAppz Sep 17, 2024
dbd2d48
Merge pull request #22 from PSNAppz/1.0.0
venky-ganapathy Sep 17, 2024
8eda9f0
Invoke account_statement_generator task after the payments are processed
PSNAppz Sep 18, 2024
72a7042
Merge pull request #23 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
906f353
Fix formatting for USSD responses
PSNAppz Sep 18, 2024
084e65e
Merge pull request #24 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
e9e1ccc
Fix formatting for USSD responses
PSNAppz Sep 18, 2024
f370837
Merge pull request #25 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
dd88d1a
Add get_recent_transactions option for USSD
PSNAppz Sep 18, 2024
775c13a
Merge pull request #26 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
6e08b99
Fix response in USSD
PSNAppz Sep 18, 2024
40f3bcd
Merge pull request #27 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
a2bf365
Fix transaction_text in USSD
PSNAppz Sep 18, 2024
c9cfdca
Pre-commit issue fix
PSNAppz Sep 18, 2024
7882679
Merge pull request #28 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
736beda
INR -> USD update for demo
PSNAppz Sep 18, 2024
1bc66d7
Merge pull request #29 from PSNAppz/1.0.0
venky-ganapathy Sep 18, 2024
f3c7e10
Run dummy account phone and email
PSNAppz Sep 19, 2024
27577c6
Return random account phone and email
PSNAppz Sep 19, 2024
ef32205
Merge pull request #30 from PSNAppz/1.0.0
venky-ganapathy Sep 19, 2024
a6fab92
Patch failure log failure_reason
PSNAppz Sep 19, 2024
31e7520
Merge pull request #31 from PSNAppz/1.0.0
venky-ganapathy Sep 19, 2024
7853a2d
Example bank workflow and docker changes
PSNAppz Sep 30, 2024
0d0bf96
Merge pull request #32 from PSNAppz/1.0.0
venky-ganapathy Oct 1, 2024
10a2ea1
Add reported_in_mt940 to AccountingLog
PSNAppz Oct 7, 2024
9ffeb0f
Merge pull request #33 from PSNAppz/1.0.0
venky-ganapathy Oct 7, 2024
3e50e86
Fix Dockerfile issue in example bank celery
PSNAppz Oct 7, 2024
0f5bb22
Merge pull request #34 from PSNAppz/1.0.0
venky-ganapathy Oct 7, 2024
31a394b
Update USSD controller response text
PSNAppz Oct 20, 2024
4db52e4
Merge pull request #35 from PSNAppz/1.0.0
venky-ganapathy Oct 21, 2024
16a1b40
Update fastapi-common version
PSNAppz Dec 3, 2024
894d643
Merge pull request #36 from PSNAppz/1.0.0
venky-ganapathy Dec 3, 2024
dde56b3
Update fastapi-common version
PSNAppz Dec 3, 2024
9c4a07f
Merge pull request #37 from PSNAppz/1.0.0
venky-ganapathy Dec 3, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
43 changes: 43 additions & 0 deletions .github/workflows/api-branch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Example Bank API Branch Workflow

on:
push:
branches-ignore:
- develop
tags-ignore:
- '*'

jobs:
docker-build-for-branch:
name: Docker Build and Push For API Branch
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-api
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')

IMAGE_ID=$NAMESPACE/$SERVICE_NAME

# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=$BRANCH_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV

docker build ./openg2p-g2p-bridge-example-bank-api -f ./openg2p-g2p-bridge-example-bank-api/Dockerfile-git \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
96 changes: 96 additions & 0 deletions .github/workflows/api-tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: Example Bank API Tag Workflow

on:
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For API Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: actions/checkout@v3
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build ./openg2p-g2p-bridge-example-bank-api
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-api/dist/

openapi-publish:
name: OpenAPI Generate and Publish For API Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Get branch name (merge)
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV
- name: Setup python for openapi generate
uses: actions/setup-python@v4
with:
python-version: "3.10"
- name: Install app
run: |
python -m pip install git+https://github.com/openg2p/openg2p-fastapi-common@v1.1.1\#subdirectory=openg2p-fastapi-common
python -m pip install git+https://github.com/openg2p/openg2p-fastapi-common@v1.1.1\#subdirectory=openg2p-fastapi-auth
python -m pip install git+https://github.com/openg2p/openg2p-g2p-bridge-example-bank@v1.0.0\#subdirectory=openg2p-g2p-bridge-example-bank-models
python -m pip install openg2p-g2p-bridge-example-bank-api==1.0.0
- name: Generate openapi json
run: |
mkdir -p openg2p-g2p-bridge-example-bank-api/api-docs/generated
python3 openg2p-g2p-bridge-example-bank-api/main.py getOpenAPI openg2p-g2p-bridge-example-bank-api/api-docs/generated/openapi.json
- name: Setup nodejs
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Publish to stoplight
run: |
npx @stoplight/cli@5 push --ci-token ${{ secrets.STOPLIGHT_PROJECT_TOKEN }} --url https://openg2p.stoplight.io --branch ${{ env.TAG_NAME }} --directory openg2p-g2p-bridge-example-bank-api/api-docs/generated


docker-build-for-tag:
name: Docker Build and Push For API Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-api
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV

IMAGE_ID=$NAMESPACE/$SERVICE_NAME

# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=TAG_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV

docker build ./openg2p-g2p-bridge-example-bank-api -f ./openg2p-g2p-bridge-example-bank-api/Dockerfile-pypi \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
51 changes: 51 additions & 0 deletions .github/workflows/api-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
name: Test and coverage

on:
pull_request:
push:
workflow_dispatch:

concurrency:
group: check-${{ github.ref }}
cancel-in-progress: true

jobs:
test:
name: test with ${{ matrix.py }} on ${{ matrix.os }}
runs-on: ${{ matrix.os }}
strategy:
fail-fast: false
matrix:
py:
- "3.10"
os:
- ubuntu-latest
services:
postgres:
image: postgres:9.6
env:
POSTGRES_USER: openg2p
POSTGRES_PASSWORD: openg2p
POSTGRES_DB: openg2p
ports:
- 5432:5432
steps:
- uses: actions/checkout@v3
with:
fetch-depth: 0
- name: Setup python for test ${{ matrix.py }}
uses: actions/setup-python@v4
with:
python-version: ${{ matrix.py }}
- name: Install test requirements
run: |
python -m pip install -r test-requirements.txt
python -m pip install -e openg2p-g2p-bridge-example-bank-api
# TODO: add other packages here
- name: Run test suite
run: |
pytest --cov-branch --cov-report=term-missing --cov=openg2p-g2p-bridge-example-bank-api --cov=tests
- name: Upload coverage to Codecov
uses: codecov/codecov-action@v4
with:
token: ${{ secrets.CODECOV_TOKEN }}
29 changes: 29 additions & 0 deletions .github/workflows/bank-models-tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Bank Models PyPI Publish

on:
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For Models Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: actions/checkout@v3
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build ./openg2p-g2p-bridge-example-bank-models
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-models/dist/
43 changes: 43 additions & 0 deletions .github/workflows/celery-branch.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,43 @@
name: Example Bank Celery Branch Workflow

on:
push:
branches-ignore:
- develop
tags-ignore:
- '*'

jobs:
docker-build-for-branch:
name: Docker Build and Push For Celery Branch
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-celery
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
BRANCH_NAME=$(echo ${{ github.ref }} | sed -e 's,.*/\(.*\),\1,')

IMAGE_ID=$NAMESPACE/$SERVICE_NAME

# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=$BRANCH_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV

docker build ./openg2p-g2p-bridge-example-bank-celery -f ./openg2p-g2p-bridge-example-bank-celery/Dockerfile-git \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
64 changes: 64 additions & 0 deletions .github/workflows/celery-tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
name: Example Bank Celery Tag Workflow

on:
push:
tags:
- "*"
branches-ignore:
- '*'
workflow_dispatch:

jobs:
publish-to-pypi:
name: Publish to PyPI For Celery Tag
runs-on: ubuntu-latest
steps:
- name: Set up Python
uses: actions/setup-python@v4
with:
python-version: "3.10"
- uses: actions/checkout@v3
- name: Install build dependencies
run: pip install build
- name: Build distribution
run: python -m build ./openg2p-g2p-bridge-example-bank-celery
- name: Publish
uses: pypa/gh-action-pypi-publish@release/v1
with:
password: ${{ secrets.PYPI_API_TOKEN }}
packages-dir: ./openg2p-g2p-bridge-example-bank-celery/dist/

docker-build-for-tag:
name: Docker Build and Push For Celery Tag
needs: publish-to-pypi
runs-on: ubuntu-latest
env:
NAMESPACE: ${{ secrets.docker_hub_organisation || 'openg2p' }}
SERVICE_NAME: openg2p-g2p-bridge-example-bank-celery
steps:
- uses: actions/checkout@v3
- name: Docker build
run: |
echo "TAG_NAME=${GITHUB_REF#refs/tags/}" >> $GITHUB_ENV

IMAGE_ID=$NAMESPACE/$SERVICE_NAME

# Change all uppercase to lowercase
IMAGE_ID=$(echo $IMAGE_ID | tr '[A-Z]' '[a-z]')
VERSION=TAG_NAME
echo IMAGE_ID=$IMAGE_ID
echo VERSION=$VERSION
echo IMAGE_ID=$IMAGE_ID >> $GITHUB_ENV
echo VERSION=$VERSION >> $GITHUB_ENV

docker build ./openg2p-g2p-bridge-example-bank-celery -f ./openg2p-g2p-bridge-example-bank-celery/Dockerfile-pypi \
--tag $IMAGE_ID:$VERSION
if [[ '${{ secrets.docker_hub_token }}' != '' && '${{ secrets.docker_hub_actor }}' != '' ]]; then
export DOCKER_PUSH="true"
echo DOCKER_PUSH=$DOCKER_PUSH >> $GITHUB_ENV
fi
- name: Docker push
if: env.DOCKER_PUSH == 'true'
run: |
echo "${{ secrets.docker_hub_token }}" | docker login -u ${{ secrets.docker_hub_actor }} --password-stdin
docker push ${{ env.IMAGE_ID }}:${{ env.VERSION }}
16 changes: 16 additions & 0 deletions .github/workflows/pre-commit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: pre-commit

on:
pull_request:
push:
workflow_dispatch:

jobs:
pre-commit:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- uses: actions/setup-python@v3
- uses: pre-commit/action@v3.0.0
with:
extra_args: --all-files --show-diff-on-failure
21 changes: 21 additions & 0 deletions .github/workflows/tag.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
name: Tag the repo
on:
workflow_dispatch:
inputs:
new-tag:
description: Tag in "vN.N.N" format
required: true
type: string
previous-tag:
description: Previous tag. "None" if no previous tag
required: true
type: string
default: latest
jobs:
tag-repo:
uses: openg2p/openg2p-packaging/.github/workflows/tag.yml@main
with:
new-tag: ${{ inputs.new-tag }}
previous-tag: ${{ inputs.previous-tag }}
secrets:
OPENG2P_BOT_GITHUB_PAT: ${{ secrets.OPENG2P_BOT_GITHUB_PAT }}
2 changes: 1 addition & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -159,4 +159,4 @@ cython_debug/
# be found at https://github.com/github/gitignore/blob/main/Global/JetBrains.gitignore
# and can be added to the global gitignore or merged into this file. For a more nuclear
# option (not recommended) you can uncomment the following to ignore the entire idea folder.
#.idea/
.idea/
Loading
Loading