diff --git a/.github/workflows/caller.yml b/.github/workflows/caller.yml index ae596ad..8c30c4f 100644 --- a/.github/workflows/caller.yml +++ b/.github/workflows/caller.yml @@ -35,4 +35,4 @@ jobs: security-events: write with: base_ref: ${{ github.event.pull_request.base.ref != '' && github.event.pull_request.base.ref || github.ref_name }} - head_ref: ${{ github.event.pull_request.head.ref != '' && github.event.pull_request.head.ref || github.sha }} \ No newline at end of file + head_ref: ${{ github.event.pull_request.head.ref != '' && github.event.pull_request.head.ref || github.sha }} diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 4b1c325..66e151d 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -13,11 +13,11 @@ name: "CodeQL Advanced" on: push: - branches: [ "main" ] + branches: ["main"] pull_request: - branches: [ "main" ] + branches: ["main"] schedule: - - cron: '26 22 * * 0' + - cron: "26 22 * * 0" jobs: analyze: @@ -43,10 +43,10 @@ jobs: fail-fast: false matrix: include: - - language: actions - build-mode: none - - language: python - build-mode: none + - language: actions + build-mode: none + - language: python + build-mode: none # CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'rust', 'swift' # Use `c-cpp` to analyze code written in C, C++ or both # Use 'java-kotlin' to analyze code written in Java, Kotlin or both @@ -56,45 +56,45 @@ jobs: # If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how # your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages steps: - - name: Checkout repository - uses: actions/checkout@v4 + - name: Checkout repository + uses: actions/checkout@v4 - # Add any setup steps before running the `github/codeql-action/init` action. - # This includes steps like installing compilers or runtimes (`actions/setup-node` - # or others). This is typically only required for manual builds. - # - name: Setup runtime (example) - # uses: actions/setup-example@v1 + # Add any setup steps before running the `github/codeql-action/init` action. + # This includes steps like installing compilers or runtimes (`actions/setup-node` + # or others). This is typically only required for manual builds. + # - name: Setup runtime (example) + # uses: actions/setup-example@v1 - # Initializes the CodeQL tools for scanning. - - name: Initialize CodeQL - uses: github/codeql-action/init@v3 - with: - languages: ${{ matrix.language }} - build-mode: ${{ matrix.build-mode }} - # If you wish to specify custom queries, you can do so here or in a config file. - # By default, queries listed here will override any specified in a config file. - # Prefix the list here with "+" to use these queries and those in the config file. + # Initializes the CodeQL tools for scanning. + - name: Initialize CodeQL + uses: github/codeql-action/init@v3 + with: + languages: ${{ matrix.language }} + build-mode: ${{ matrix.build-mode }} + # If you wish to specify custom queries, you can do so here or in a config file. + # By default, queries listed here will override any specified in a config file. + # Prefix the list here with "+" to use these queries and those in the config file. - # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs - # queries: security-extended,security-and-quality + # For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs + # queries: security-extended,security-and-quality - # If the analyze step fails for one of the languages you are analyzing with - # "We were unable to automatically build your code", modify the matrix above - # to set the build mode to "manual" for that language. Then modify this step - # to build your code. - # â„šī¸ Command-line programs to run using the OS shell. - # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun - - if: matrix.build-mode == 'manual' - shell: bash - run: | - echo 'If you are using a "manual" build mode for one or more of the' \ - 'languages you are analyzing, replace this with the commands to build' \ - 'your code, for example:' - echo ' make bootstrap' - echo ' make release' - exit 1 + # If the analyze step fails for one of the languages you are analyzing with + # "We were unable to automatically build your code", modify the matrix above + # to set the build mode to "manual" for that language. Then modify this step + # to build your code. + # â„šī¸ Command-line programs to run using the OS shell. + # 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun + - if: matrix.build-mode == 'manual' + shell: bash + run: | + echo 'If you are using a "manual" build mode for one or more of the' \ + 'languages you are analyzing, replace this with the commands to build' \ + 'your code, for example:' + echo ' make bootstrap' + echo ' make release' + exit 1 - - name: Perform CodeQL Analysis - uses: github/codeql-action/analyze@v3 - with: - category: "/language:${{matrix.language}}" + - name: Perform CodeQL Analysis + uses: github/codeql-action/analyze@v3 + with: + category: "/language:${{matrix.language}}" diff --git a/.gitignore b/.gitignore index 274d049..0b4f9b9 100644 --- a/.gitignore +++ b/.gitignore @@ -1,2 +1,3 @@ node_modules -.venv \ No newline at end of file +.venv +.ruff_cache \ No newline at end of file diff --git a/.husky/pre-commit b/.husky/pre-commit new file mode 100644 index 0000000..f669c5b --- /dev/null +++ b/.husky/pre-commit @@ -0,0 +1,22 @@ +#!/bin/sh +. "$(dirname "$0")/_/husky.sh" + +echo "🔍 Running local pre-push CI/CD simulation..." + +# Run Prettier +echo "✨ Running Prettier..." +npm run format:check +if [ $? -ne 0 ]; then + echo "❌ Prettier issues found!" + exit 1 +fi + +# Run Ruff +echo "🐍 Running Ruff..." +ruff check . +if [ $? -ne 0 ]; then + echo "❌ Ruff issues found!" + exit 1 +fi + +echo "✅ All local pre-push checks passed!" \ No newline at end of file diff --git a/README.md b/README.md index 3cf826d..10b3507 100644 --- a/README.md +++ b/README.md @@ -3,3 +3,5 @@ fix the branch in the workflows let's test it out now workflow updated now it will run dummy check like lint , format, test + +I setup the branch to test out that my application is working in that or not diff --git a/hello.py b/hello.py index faa2240..05bebc2 100644 --- a/hello.py +++ b/hello.py @@ -1,18 +1,9 @@ -print('Hello, World!') +num = int(input("Enter a number: ")) -print('welcome to test the ci and cd') +if num % 2 == 0: + print("Even") +else: + print("Odd") - -print('this is the test branch do not merge it directly to main') - -print('how it works in the test branch') - -print('add the changes') - -print('remove the permissions from the global CI/CD workflow') - -print('add the permissions to each job in the CI/CD workflow') - -print('now the pr checks should work as expected')