Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
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
59 changes: 34 additions & 25 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,30 +1,39 @@
**/.classpath
**/.dockerignore
**/.env
# === Git and Docker ===
**/.git
**/.gitignore
**/.project
**/.settings
**/.toolstarget
**/.vs
**/.vscode
**/*.*proj.user
**/*.dbmdl
**/*.jfm
**/azds.yaml
**/bin
**/charts
**/docker-compose*
**/.gitattributes
**/.dockerignore
**/Dockerfile*
**/node_modules
**/npm-debug.log
**/obj
**/secrets.dev.yaml
**/values.dev.yaml
!src/Jiban.Api/Dockerfile.production
**/docker-compose*
**/.env*
**/secrets.*.yaml

# === Documentation ===
LICENSE
README.md
!**/.gitignore
!.git/HEAD
!.git/config
!.git/packed-refs
!.git/refs/heads/**
CONTRIBUTING.md
CODE_OF_CONDUCT.md
**/docs
**/*.md

# === .NET build output ===
**/bin/
**/obj/
**/TestResults/
**/out/
**/coverage/
**/*.user
**/*.suo
**/*.dbmdl
**/*.log
**/*.tlog

# === Node / Frontend ===
**/node_modules/
**/dist/
**/build/

# === AppSettings ===
**/appsettings.*.json
!**/appsettings.json
32 changes: 32 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
---
name: Bug report
about: Create a report to help us improve
title: "[BUG]"
labels: bug
assignees: yanpitangui

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add screenshots to help explain your problem.

**(please complete the following information):**
- OS: [e.g. iOS]
- Visual Studio Version [e.g. 22]
- .Net SDK Version

**Additional context**
Add any other context about the problem here.
12 changes: 12 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
---
name: Documentation suggestion
about: Suggest an improvement to the documentation
title: "[DOCUMENTATION]"
labels: documentation
assignees: ''

---

**Context**

Please tell us what you think can be improved on the documentation.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: "[FEATURE]"
labels: enhancement
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "nuget" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "daily"
121 changes: 121 additions & 0 deletions .github/workflows/production.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
name: JIBAN EVENT PRODUCTION
on:
workflow_dispatch:
inputs:
name:
description: "Who to greet"
default: "World"
pull_request:
paths-ignore:
- "**.md"
branches: ["main"]

jobs:
build:
runs-on: ubuntu-latest
env:
DOTNET_CORE_VERSION: 10.0.x
PORTHTTPS: ${{secrets.PORTHTTPS}}
TZ: America/Guayaquil
NUGET_TOKEN: ${{ secrets.NUGET_TOKEN }}
outputs:
image-tag: ${{ steps.generate-tag.outputs.image-tag }}
steps:
- name: Set up .NET Core SDK
uses: actions/setup-dotnet@v5.0.0
with:
dotnet-version: '10.0.x'

- name: Check out code
uses: actions/checkout@v5.0.0

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3.11.1

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: raulidavid
password: ${{ secrets.JIBANTOKEN }}

- name: Generate IMAGE_TAG
id: generate-tag
run: |
IMAGE_TAG="ghcr.io/raulidavid/jiban-event:production-v$(date +%Y.%m.%d)-${{ github.run_number }}"
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
echo "image-tag=$IMAGE_TAG" >> $GITHUB_OUTPUT
echo "Generated tag: $IMAGE_TAG"

- name: Rename .nuget.config to nuget.config
run: mv .nuget.config nuget.config

- name: Configure NuGet
run: |
echo "Configuring NuGet..."
sed -i 's|\${NUGET_TOKEN}|'"${{ secrets.NUGET_TOKEN }}"'|g' nuget.config

- name: Build and Push Api Image
uses: docker/build-push-action@v5
with:
context: .
file: src/Jiban.Api/Dockerfile.production
push: true
tags: ${{ env.IMAGE_TAG }}
build-args: |
NUGET_TOKEN=${{ env.NUGET_TOKEN }}
cache-from: type=gha
cache-to: type=gha,mode=max
platforms: linux/amd64

- name: Send Email via Amazon SES
if: success()
uses: dawidd6/action-send-mail@v4
with:
server_address: email-smtp.us-east-1.amazonaws.com
server_port: 465
username: ${{ secrets.SES_USER }}
password: ${{ secrets.SES_PASS }}
subject: "🚀 PRODUCTION - Nueva imagen generada: ${{ env.IMAGE_TAG }}"
body: |
🚀 **BUILD EXITOSO - PRODUCTION**

La imagen Docker ha sido creada y subida exitosamente.

📌 **Tag:** `${{ env.IMAGE_TAG }}`
🏗️ **Plataformas:** `linux/amd64`
📊 **Branch:** `${{ github.ref_name }}`
📝 **Commit:** `${{ github.sha }}`
👤 **Actor:** `${{ github.actor }}`
🔗 **Workflow:** ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

---
*Generado automáticamente por GitHub Actions*
to: "raul.flores@jiban.ec"
from: "GitHub Actions Production <crm@jiban.ec>"

- name: Send Error Email via Amazon SES
if: failure()
uses: dawidd6/action-send-mail@v4
with:
server_address: email-smtp.us-east-1.amazonaws.com
server_port: 465
username: ${{ secrets.SES_USER }}
password: ${{ secrets.SES_PASS }}
subject: "❌ PRODUCTION - Error en build: ${{ github.ref_name }}"
body: |
💥 **BUILD FALLÓ - PRODUCTION**

Ha ocurrido un error durante el proceso de build.

📊 **Branch:** `${{ github.ref_name }}`
📝 **Commit:** `${{ github.sha }}`
👤 **Actor:** `${{ github.actor }}`
🔗 **Ver detalles:** ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

Por favor revisa los logs para más detalles.

---
*Generado automáticamente por GitHub Actions*
to: "raul.flores@jiban.ec"
from: "GitHub Actions Production <crm@jiban.ec>"
121 changes: 121 additions & 0 deletions .github/workflows/quality.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,121 @@
name: JIBAN EVENT QUALITY

on:
workflow_dispatch:
inputs:
name:
description: "Who to greet"
default: "World"
push:
paths-ignore:
- '**.md'
branches: [ "develop" ]

jobs:
build:
runs-on: ubuntu-latest
env:
DOTNET_CORE_VERSION: 10.0.x
PORTHTTPS: "44361"
TZ: America/Guayaquil
NUGET_TOKEN: ${{ secrets.NUGET_TOKEN }}
outputs:
image-tag: ${{ steps.generate-tag.outputs.image-tag }}
steps:
- name: Set up .NET Core SDK
uses: actions/setup-dotnet@v5.0.0
with:
dotnet-version: '10.0.x'

- name: Check out code
uses: actions/checkout@v5.0.0

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3.11.1

- name: Log in to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: raulidavid
password: ${{ secrets.JIBANTOKEN }}

- name: Generate IMAGE_TAG
id: generate-tag
run: |
IMAGE_TAG="ghcr.io/raulidavid/jiban-event:quality-v$(date +%Y.%m.%d)-${{ github.run_number }}"
echo "IMAGE_TAG=$IMAGE_TAG" >> $GITHUB_ENV
echo "image-tag=$IMAGE_TAG" >> $GITHUB_OUTPUT
echo "Generated tag: $IMAGE_TAG"

- name: Rename .nuget.config to nuget.config
run: mv .nuget.config nuget.config

- name: Configure NuGet
run: |
echo "Configuring NuGet..."
sed -i 's|\${NUGET_TOKEN}|'"${{ secrets.NUGET_TOKEN }}"'|g' nuget.config

- name: Build and Push Api Image
uses: docker/build-push-action@v5
with:
context: .
file: src/Jiban.Api/Dockerfile.production
push: true
tags: ${{ env.IMAGE_TAG }}
build-args: |
NUGET_TOKEN=${{ env.NUGET_TOKEN }}
cache-from: type=gha
cache-to: type=gha,mode=max
platforms: linux/amd64

- name: Send Email via Amazon SES
if: success()
uses: dawidd6/action-send-mail@v4
with:
server_address: email-smtp.us-east-1.amazonaws.com
server_port: 465
username: ${{ secrets.SES_USER }}
password: ${{ secrets.SES_PASS }}
subject: "✅ QUALITY - Nueva imagen generada: ${{ env.IMAGE_TAG }}"
body: |
🚀 **BUILD EXITOSO - QUALITY**

La imagen Docker ha sido creada y subida exitosamente.

📌 **Tag:** `${{ env.IMAGE_TAG }}`
📊 **Branch:** `${{ github.ref_name }}`
📝 **Commit:** `${{ github.sha }}`
👤 **Actor:** `${{ github.actor }}`
🔗 **Workflow:** ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

---
*Generado automáticamente por GitHub Actions*
to: "raul.flores@jiban.ec"
from: "GitHub Actions Quality <crm@jiban.ec>"

- name: Send Error Email via Amazon SES
if: failure()
uses: dawidd6/action-send-mail@v4
with:
server_address: email-smtp.us-east-1.amazonaws.com
server_port: 465
username: ${{ secrets.SES_USER }}
password: ${{ secrets.SES_PASS }}
subject: "❌ QUALITY - Error en build: ${{ github.ref_name }}"
body: |
💥 **BUILD FALLÓ - QUALITY**

Ha ocurrido un error durante el proceso de build.

📊 **Branch:** `${{ github.ref_name }}`
📝 **Commit:** `${{ github.sha }}`
👤 **Actor:** `${{ github.actor }}`
🔗 **Ver detalles:** ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}

Por favor revisa los logs para más detalles.

---
*Generado automáticamente por GitHub Actions*
to: "raul.flores@jiban.ec"
from: "GitHub Actions Quality <crm@jiban.ec>"
Loading
Loading