diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml
new file mode 100644
index 00000000..abd63f3c
--- /dev/null
+++ b/.github/workflows/deploy.yml
@@ -0,0 +1,40 @@
+name: eShop deploy
+
+on:
+  push:
+    paths:
+    - 'deploy/k8s/helm-simple/coupon/*'
+    branches: [ main ]
+
+jobs:
+  deploy-to-aks:
+    runs-on: ubuntu-latest
+    steps:
+    - name: Azure Login
+      uses: azure/login@v1.4.5
+      with:
+        creds: ${{ secrets.AZURE_CREDENTIALS }}
+
+    - name: Azure Kubernetes set context
+      uses: Azure/aks-set-context@v2
+      with:
+        resource-group: 'eshop-learn-rg'
+        cluster-name: 'eshop-learn-aks'
+
+    - name: Get code from the repository
+      uses: actions/checkout@v3
+      with:
+        ref: main
+
+    - name: Helm tool installer
+      uses: Azure/setup-helm@v1
+
+    - name: Deploy
+      run: >
+        helm upgrade 
+        --install eshoplearn-coupon
+        --namespace=default 
+        --set registry=${{ secrets.REGISTRY_LOGIN_SERVER }} 
+        --set imagePullPolicy=Always 
+        --set host=${{ secrets.IP_ADDRESS }} 
+        --set protocol=http './deploy/k8s/helm-simple/coupon'
diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
new file mode 100644
index 00000000..cae15e34
--- /dev/null
+++ b/.github/workflows/main.yml
@@ -0,0 +1,35 @@
+name: eShop build
+
+on:
+  push:
+    paths:
+    - 'src/Services/Coupon/**'
+    - 'tests/Services/Coupon/**'
+    branches: [ main ]
+
+jobs:
+  build-and-push-docker-image:
+    runs-on: ubuntu-latest
+    steps:
+    - name: Get code from the repository
+      uses: actions/checkout@v1
+      with:
+        ref: main
+
+    - name: Run unit tests
+      run: dotnet test tests/Services/Coupon/*.Tests/*.csproj
+      env:
+        DOTNET_CLI_TELEMETRY_OPTOUT: true
+        DOTNET_NOLOGO: true
+
+    - name: Build and push Docker image
+      uses: docker/build-push-action@v1.1.0
+      with:
+        username: ${{ secrets.REGISTRY_USERNAME }}
+        password: ${{ secrets.REGISTRY_PASSWORD }}
+        registry: ${{ secrets.REGISTRY_LOGIN_SERVER }}
+        path: .
+        dockerfile: './src/Services/Coupon/Coupon.API/Dockerfile.acr'
+        repository: 'coupon.api'
+        tags: 'linux-net6-coupon'
+        push: true
diff --git a/deploy/k8s/helm-simple/coupon/Chart.yaml b/deploy/k8s/helm-simple/coupon/Chart.yaml
index 9f338f68..47ebf935 100644
--- a/deploy/k8s/helm-simple/coupon/Chart.yaml
+++ b/deploy/k8s/helm-simple/coupon/Chart.yaml
@@ -18,4 +18,4 @@ version: 0.1.0
 
 # This is the version number of the application being deployed. This version number should be
 # incremented each time you make changes to the application.
-appVersion: 1.0.0
+appVersion: 1.2.0
diff --git a/src/Services/Coupon/Coupon.API/Controllers/CouponController.cs b/src/Services/Coupon/Coupon.API/Controllers/CouponController.cs
index 40503ef8..89bb185a 100644
--- a/src/Services/Coupon/Coupon.API/Controllers/CouponController.cs
+++ b/src/Services/Coupon/Coupon.API/Controllers/CouponController.cs
@@ -54,7 +54,7 @@ public async Task<ActionResult<CouponDto>> GetCouponByCodeAsync(string code)
 
             var couponDto = _mapper.Translate(coupon);
 
-            // Add LogInformation call
+            _logger.LogInformation("Applying coupon {CouponCode}", code);
 
             return couponDto;
         }
diff --git a/tests/Services/Coupon/Coupon.API.Tests/Controllers/CouponControllerTests.cs b/tests/Services/Coupon/Coupon.API.Tests/Controllers/CouponControllerTests.cs
index bb06d0fe..d7d1a098 100644
--- a/tests/Services/Coupon/Coupon.API.Tests/Controllers/CouponControllerTests.cs
+++ b/tests/Services/Coupon/Coupon.API.Tests/Controllers/CouponControllerTests.cs
@@ -7,7 +7,7 @@ public class CouponControllerTests
         [Fact]
         public void Test1()
         {
-            Assert.True(false);
+            Assert.True(true);
         }
     }
 }