Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
79 commits
Select commit Hold shift + click to select a range
d51ec18
env added
elior19940 Aug 19, 2026
4e4b5d3
updated vars
elior19940 Aug 19, 2026
d331bf6
added always() for archive test result step
elior19940 Aug 19, 2026
189b48f
added code-coverage job
elior19940 Aug 19, 2026
03cc125
fix
elior19940 Aug 19, 2026
7880298
fix2
elior19940 Aug 19, 2026
019c9a7
added docker login
elior19940 Aug 20, 2026
9c7f554
added matrix
elior19940 Aug 20, 2026
8c4dc80
added docker image testing
elior19940 Aug 20, 2026
954fe74
added step to publish docker image
elior19940 Aug 20, 2026
2b82c5a
added GHRC login page
elior19940 Aug 20, 2026
29a5cab
added permissions
elior19940 Aug 20, 2026
9d0dea4
added mongo-db service to the unit testing step
elior19940 Aug 23, 2026
acf0267
fix
elior19940 Aug 23, 2026
131d06b
fix3
elior19940 Aug 23, 2026
27b0c9a
fix4
elior19940 Aug 23, 2026
7fab56f
fix5
elior19940 Aug 23, 2026
4f32115
added job and service containers
elior19940 Aug 23, 2026
3c9efec
added cache npm for the unit-testing step
elior19940 Aug 23, 2026
141bff9
fix ( added with)
elior19940 Aug 23, 2026
8c3f5a9
added container node:20 to the unit testing
elior19940 Aug 23, 2026
24e49e1
fix
elior19940 Aug 23, 2026
dcd6d5c
installing kubectl CLI
elior19940 Aug 23, 2026
c40af1e
added kubeconfig
elior19940 Aug 23, 2026
2f09670
Replacing Tokens
elior19940 Aug 24, 2026
33de42f
ignored all the steps
elior19940 Aug 24, 2026
63b2ce3
added secret and deploying
elior19940 Aug 24, 2026
f9d0a80
fix step order
elior19940 Aug 24, 2026
e3852af
setting output for testing
elior19940 Aug 26, 2026
96a323d
fix
elior19940 Aug 26, 2026
a94e327
fix
elior19940 Aug 26, 2026
498f6c8
fix
elior19940 Aug 26, 2026
2313f35
fix
elior19940 Aug 26, 2026
2feebfb
Added environment ot the job
elior19940 Aug 27, 2026
1bdc0d4
Added Prod jobs
elior19940 Aug 27, 2026
efa0202
added prod steps V1
elior19940 Aug 27, 2026
79b32cf
fix
elior19940 Aug 27, 2026
6353fb4
added if expression
elior19940 Aug 27, 2026
72dabec
sync
elior19940 Aug 27, 2026
a14d341
added fix
elior19940 Aug 27, 2026
aa600d2
fix
elior19940 Aug 27, 2026
b36aa69
fix
elior19940 Aug 27, 2026
3ef64d0
test
elior19940 Aug 27, 2026
f836931
added
elior19940 Aug 27, 2026
0d49f9d
fix
elior19940 Aug 27, 2026
7450e35
fix
elior19940 Aug 27, 2026
7d4c58c
fix
elior19940 Aug 27, 2026
8cb0b45
added install clusterr phase
elior19940 Aug 27, 2026
710c39c
added new reusable workflow
elior19940 Aug 30, 2026
9542b87
added reusable workflow
elior19940 Aug 30, 2026
1563eb1
fix
elior19940 Aug 30, 2026
181ad1f
passing secrets from caller to called workflows
elior19940 Aug 30, 2026
ada9abd
fix
elior19940 Aug 30, 2026
81512aa
added inputs to reusable workflow
elior19940 Aug 30, 2026
3304231
added outputs to reusable workflow
elior19940 Aug 30, 2026
7747e4f
fix
elior19940 Aug 30, 2026
e1d8423
fix
elior19940 Aug 30, 2026
becad89
fix
elior19940 Aug 30, 2026
2df2071
lab workflow
elior19940 Aug 30, 2026
8f187bc
preparing jobs for reporting
elior19940 Aug 30, 2026
013f80a
fix
elior19940 Aug 30, 2026
72ce1b4
fix
elior19940 Aug 30, 2026
c2e2dd9
fix
elior19940 Aug 30, 2026
ec1ca26
fix
elior19940 Aug 30, 2026
7ae8730
fix
elior19940 Aug 30, 2026
efd7ad3
added composite action
elior19940 Aug 31, 2026
c06b751
fix
elior19940 Aug 31, 2026
c16b6f3
fix
elior19940 Aug 31, 2026
adff303
fix
elior19940 Aug 31, 2026
d1a189e
created script-injcetion-test workflow
elior19940 Sep 2, 2026
24e5b70
[skip ci]
elior19940 Sep 2, 2026
4cdccaa
test
elior19940 Sep 2, 2026
824c62e
update
elior19940 Sep 2, 2026
323374f
updated second trigger
elior19940 Sep 2, 2026
5a63823
test
elior19940 Sep 2, 2026
e4fb7d0
update new trigger method
elior19940 Sep 2, 2026
3f46a01
modified workflow [skip ci]
elior19940 Sep 2, 2026
7780dab
updated aws env
elior19940 Sep 2, 2026
a7c563f
fix
elior19940 Sep 2, 2026
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
18 changes: 18 additions & 0 deletions .github/custom-actions/npm-action/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: 'NPM Custom Action'
description: 'Installing and Caching NPM Packages'
inputs:
path-of-folder: #id of input
description: 'the path to cache'
required: true
runs:
using: "composite"
steps:
- name: Cache NPM dependencies
uses: actions/cache@v6.1.0
with:
path: ${{ inputs.path-of-folder }}
key: '${{ runner.os }}-node-modules-${{ hashFiles(''package-lock.json'') }}'

- name: Install Dependencies
run: npm install
shell: bash
16 changes: 16 additions & 0 deletions .github/workflows/reusable-workflow.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
name: Testing - Reusable Workflow
on:
workflow_call:
inputs:
ingress-url:
description: Provide the Ingress URL
required: true
type: string
jobs:
integration-test:
runs-on: ubuntu-latest
steps:
- env:
URL: '${{ inputs.ingress-url }}'
run: |
curl https://$URL/live -s -k | jq -r .status | grep -i live
116 changes: 116 additions & 0 deletions .github/workflows/reuse-deployment.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
name: Deployment- Reusable Workflow

on:
workflow_call:
inputs:
mongodb-uri:
required: true
type: string
kubectl-version:
description: Provide the required Kubectl version
default: v1.26.0
required: false
type: string
k8s-manifest-dir:
description: Directory containing Kubernetes manifests files
default: kubernetes/
required: true
type: string
environment:
description: Provide the Deployment Environment
default: developtment
required: true
type: string
outputs:
application-url:
value: "${{ jobs.reuse-deploy.outputs.APP_INGRESS_URL }}"
secrets:
# k8s-kubeconfig:
# required: true
mongodb-password:
required: true
jobs:
reuse-deploy:
environment:
name: ${{ inputs.environment }}
# url: https://${{ steps.set-ingress-host-address.outputs.APP_INGRESS_HOST }}
# outputs:
# APP_INGRESS_URL: ${{ steps.set-ingress-host-address.outputs.APP_INGRESS_HOST }}
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v4

- name: Install Kubectl CLI
uses: Azure/setup-kubectl@v5.1.0
with:
version: '${{ inputs.kubectl-version }}'

- name: Install Cluster
uses: helm/kind-action@v1.14.0

- name: Test Pod Deployment
run: |
sleep 5
kubectl -n kube-system get pod
set +e
REPO_OWNER_LC="${GITHUB_REPOSITORY_OWNER,,}"
kubectl run solar --image ghcr.io/${REPO_OWNER_LC}/solar-system:${{ github.sha }} \
--env MONGO_URI=${{ env.MONGO_URI}} \
--env MONGO_USERNAME=${{ env.MONGO_USERNAME}} \
--env MONGO_PASSWORD=${{ env.MONGO_PASSWORD}}
set -e
echo "kubectl returned $?"
kubectl -n default get pod
sleep 10

# - name: Set Kubeconfig file
# uses: Azure/k8s-set-context@v5.0.1
# with:
# method: kubeconfig
# kubeconfig: ${{ secrets.k8s-kubeconfig }}

# - name: Fetch Kubernetes Cluster Details
# run: |
# kubectl version --short
# echo ----------------------------
# kubectl get nodes

# - name: Save Nginx Ingress Controller IP as a GITHUB environment variable
# run: |
# echo "INGRESS_IP=$(kubectl -n ingress-nginx get services ingress-nginx-controller -o jsonpath="{.status.loadbalancer.ingress[0]}")" >> $GITHUB_ENV

# - name: Replace Tokens in manifest Files
# uses: cschleiden/replace-tokens@v1.4
# with:
# tokenPrefix: '_{_'
# tokenSuffix: '_}_'
# files: '["${{ inputs.k8s-manifest-dir }}*.yaml"]'
# env:
# NAMESPACE: ${{ vars.NAMESPACE }}
# REPLICAS: ${{ vars.REPLICAS }}
# IMAGE: ${{ vars.DOCKERHUB_USERNAME }}/solar-system:${{ github.sha }}
# # INGESS_IP: ${{ env.INGESS_IP }}

# - name: Check Files
# run: |
# cat ${{ inputs.k8s-manifest-dir }}*.yaml

# - name: Create MongoDB Secret
# run: |
# kubectl -n ${{ vars.NAMESPACE }} create secret generic mongo-db-creds \
# --from-literal=MONGO_URI=${{ inputs.mongodb-uri }} \
# --from-literal=MONGO_USERNAME=${{ vars.MONGO_USERNAME }} \
# --from-literal=MONGO_PASSWORD=${{ secrets.mongodb-password }} \
# --save-config \
# --dry-run=client \
# -o yaml | kubectl apply -f -

# - name: Deploy To Dev Env
# run: |
# kubectl apply -f ${{ inputs.k8s-manifest-dir }}

# - name: Set App Ingress Host URL
# id: set-ingress-host-address
# run: |
# echo "APP_INGRESS_HOST=$(kubectl -n ${{ vars.NAMESPACE }} get ingress -o jsonpath "{.items[0].spec.tls[0]}")" >> $GITHUB_OUTPUT
24 changes: 24 additions & 0 deletions .github/workflows/script-injection-test.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: Label Issues (Script Injection)
on:
workflow_dispatch:
issues:
types:
- opened
jobs:
assign-label:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4.1.1

- name: Add a Label
env:
AWS_SECRET_ACCESS_KEY: 'im a secret'

run: |
issue_title == "${{ github.event.issue.title }}"
if [[ "$issue_title" == *"bug"* ]]; then
echo "Issue is about a bug!"
echo "Assigning Label - BUG .... .... .... ...."
else
echo "Not a bug"
fi
Loading