Skip to content

Commit

Permalink
Merge branch 'release/3.208.0'
Browse files Browse the repository at this point in the history
  • Loading branch information
vc-ci committed Oct 6, 2022
2 parents 8c32e2f + 4b4e106 commit a067e8f
Show file tree
Hide file tree
Showing 8 changed files with 133 additions and 161 deletions.
29 changes: 29 additions & 0 deletions .deployment/module/cloudDeploy.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
{
"artifactKey": "VirtoCommerce.Inventory",
"deployRepo": "vc-deploy-dev",
"cmPath": "backend/packages.json",
"dev": {
"deployAppName": "vcptcore-dev",
"deployBranch": "vcptcore-dev",
"environmentId": "dev",
"environmentName": "Development",
"environmentType": "staging",
"environmentUrl": "https://vcptcore-dev.govirto.com/"
},
"qa": {
"deployAppName": "vcptcore-qa",
"deployBranch": "vcptcore-qa",
"environmentId": "qa",
"environmentName": "QA",
"environmentType": "testing",
"environmentUrl": "https://vcptcore-qa.govirto.com/"
},
"prod": {
"deployAppName": "vcptcore-demo",
"deployBranch": "vcptcore-demo",
"environmentId": "prod",
"environmentName": "Demo",
"environmentType": "production",
"environmentUrl": "https://vcptcore-demo.govirto.com/"
}
}
164 changes: 53 additions & 111 deletions .github/workflows/main.yml → .github/workflows/module-ci.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# v1.1.13
# v3.200.20
name: Module CI

on:
Expand All @@ -11,6 +11,7 @@ on:
- 'README.md'
- 'LICENSE'
- '**/argoDeploy.json'
- '**/cloudDeploy.json'
- samples/**
branches:
[master, dev]
Expand All @@ -23,12 +24,15 @@ on:
- 'README.md'
- 'LICENSE'
- '**/argoDeploy.json'
- '**/cloudDeploy.json'
- samples/**

jobs:
ci:
if: ${{ github.actor != 'dependabot[bot]' && (github.event.pull_request.head.repo.full_name == github.repository || github.event.pull_request.head.repo.full_name == '') }} # Check that PR not from forked repo and not from Dependabot
runs-on: ubuntu-latest
if: ${{ github.actor != 'dependabot[bot]' &&
(github.event.pull_request.head.repo.full_name == github.repository ||
github.event.pull_request.head.repo.full_name == '') }} # Check that PR not from forked repo and not from Dependabot
runs-on: ubuntu-20.04
env:
CLOUD_INSTANCE_BASE_URL: ${{secrets.CLOUD_INSTANCE_BASE_URL}}
CLIENT_ID: ${{secrets.CLIENT_ID}}
Expand All @@ -43,8 +47,12 @@ jobs:

outputs:
artifactUrl: ${{ steps.artifactUrl.outputs.download_url }}
blobId: ${{ steps.blobRelease.outputs.blobId }}
jira-keys: ${{ steps.jira_keys.outputs.jira-keys }}
version: ${{ steps.artifact_ver.outputs.shortVersion }}
moduleId: ${{ steps.artifact_ver.outputs.moduleId }}
matrix: ${{ steps.deployment-matrix.outputs.matrix }}
run-e2e: ${{ steps.run-e2e.outputs.result }}

steps:

Expand All @@ -53,7 +61,7 @@ jobs:
run: |
echo "RELEASE_STATUS=true" >> $GITHUB_ENV
- uses: actions/checkout@v2
- uses: actions/checkout@v3
with:
fetch-depth: 0

Expand Down Expand Up @@ -109,7 +117,7 @@ jobs:
uses: VirtoCommerce/vc-github-actions/publish-nuget@master

- name: Publish to Blob
if: ${{ github.ref == 'refs/heads/dev' || github.event_name == 'pull_request' || (github.event_name == 'workflow_dispatch' && github.ref != 'refs/heads/master') }}
if: ${{ github.ref == 'refs/heads/master' || github.ref == 'refs/heads/dev' || github.event_name == 'pull_request' || (github.event_name == 'workflow_dispatch' && github.ref != 'refs/heads/master') }}
id: blobRelease
uses: VirtoCommerce/vc-github-actions/publish-blob-release@master
with:
Expand Down Expand Up @@ -146,6 +154,24 @@ jobs:
echo ::set-output name=download_url::${{ steps.blobRelease.outputs.packageUrl }}
fi;
- name: Create deployment matrix
if: ${{ github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/master'}}
uses: VirtoCommerce/vc-github-actions/cloud-create-deploy-matrix@master
id: deployment-matrix
with:
deployConfigPath: '.deployment/module/cloudDeploy.json'
releaseBranch: 'master'

- name: Check commit message for version number
id: run-e2e
run: |
if [[ "${{ github.event.head_commit.message }}" =~ ^[0-9]+\.[0-9]+\.[0-9]+$ ]];
then
echo "::set-output name=result::false"
else
echo "::set-output name=result::true"
fi
- name: Setup Git Credentials
if: ${{ (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/master') && github.event_name != 'workflow_dispatch' }}
uses: VirtoCommerce/vc-github-actions/setup-git-credentials-github@master
Expand All @@ -156,7 +182,7 @@ jobs:
if: ${{ (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/master') && github.event_name != 'workflow_dispatch' }}
uses: VirtoCommerce/vc-github-actions/publish-manifest@master
with:
packageUrl: ${{ steps.blobRelease.outputs.packageUrl }}
packageUrl: ${{ steps.artifactUrl.outputs.download_url }}

- name: Update virtocommerce.com
if: ${{ github.ref == 'refs/heads/master' }}
Expand Down Expand Up @@ -204,113 +230,11 @@ jobs:
run: |
echo "Jira Upload Build Info response: ${{ steps.push_build_info_to_jira.outputs.response }}"
deploy:
if: ${{ (github.ref == 'refs/heads/dev' || github.ref == 'refs/heads/master') && github.event_name == 'push' }}
needs: ci
runs-on: ubuntu-latest
env:
GITHUB_TOKEN: ${{ secrets.REPO_TOKEN }}
CLOUD_INSTANCE_BASE_URL: ${{secrets.CLOUD_INSTANCE_BASE_URL}}
CLIENT_ID: ${{secrets.CLIENT_ID}}
CLIENT_SECRET: ${{secrets.CLIENT_SECRET}}
DEPLOYMENT_ENV: 'dev'
SLEEP_TIME: '5m'
ARGO_SERVER: 'argo.govirto.com'

steps:
- name: Set DEPLOYMENT_ENV variable
if: ${{ github.ref == 'refs/heads/master' }}
run: echo "DEPLOYMENT_ENV=prod" >> $GITHUB_ENV

- name: Read deployment config
uses: VirtoCommerce/vc-github-actions/get-deploy-param@master
id: deployConfig
with:
envName: ${{ env.DEPLOYMENT_ENV }}
deployConfigPath: '.deployment/module/argoDeploy.json'

- name: Start deployment
uses: bobheadxi/deployments@master
id: deployment
with:
step: start
token: ${{ secrets.GITHUB_TOKEN }}
env: ${{ steps.deployConfig.outputs.environmentName }}
no_override: false

- name: Update deployment-cm
uses: VirtoCommerce/vc-github-actions/create-deploy-pr@master
with:
deployRepo: ${{ steps.deployConfig.outputs.deployRepo }}
deployBranch: ${{ steps.deployConfig.outputs.deployBranch }}
artifactKey: ${{ steps.deployConfig.outputs.artifactKey }}
artifactUrl: ${{ needs.ci.outputs.artifactUrl }}
taskNumber: 'undefined'
forceCommit: 'true'
cmPath: ${{ steps.deployConfig.outputs.cmPath }}

- name: Sleep for ${{ env.SLEEP_TIME }}
run: sleep ${{ env.SLEEP_TIME }}
shell: bash

- name: Wait for environment is up
uses: VirtoCommerce/vc-github-actions/vc-argocd-cli@master
timeout-minutes: 10
id: argocd-cli
with:
server: ${{env.ARGO_SERVER}}
username: ${{ secrets.ARGOCD_LOGIN }}
password: ${{ secrets.ARGOCD_PASSWORD }}
command: app wait ${{ steps.deployConfig.outputs.deployAppName }}

- name: DEPLOY_STATE::successful
if: success()
run: echo "DEPLOY_STATE=successful" >> $GITHUB_ENV

- name: DEPLOY_STATE::failed
if: failure()
run: echo "DEPLOY_STATE=failed" >> $GITHUB_ENV

- name: Update GitHub deployment status
uses: bobheadxi/deployments@master
if: always()
with:
step: finish
token: ${{ secrets.GITHUB_TOKEN }}
status: ${{ job.status }}
deployment_id: ${{ steps.deployment.outputs.deployment_id }}

- name: Push Deployment Info to Jira
if: ${{ env.CLOUD_INSTANCE_BASE_URL != 0 && env.CLIENT_ID != 0 && env.CLIENT_SECRET != 0 && needs.ci.outputs.jira-keys != '' && always() }}
id: push_deployment_info_to_jira
uses: HighwayThree/jira-upload-deployment-info@master
env:
CLOUD_INSTANCE_BASE_URL: ${{secrets.CLOUD_INSTANCE_BASE_URL}}
CLIENT_ID: ${{secrets.CLIENT_ID}}
CLIENT_SECRET: ${{secrets.CLIENT_SECRET}}
with:
cloud-instance-base-url: ${{ secrets.CLOUD_INSTANCE_BASE_URL }}
client-id: ${{ secrets.CLIENT_ID }}
client-secret: ${{ secrets.CLIENT_SECRET }}
deployment-sequence-number: ${{ github.run_id }}
update-sequence-number: ${{ github.run_id }}
issue-keys: ${{ needs.ci.outputs.jira-keys }}
display-name: ${{ steps.deployConfig.outputs.deployAppName }}
url: ${{ steps.deployConfig.outputs.environmentUrl }}
description: 'Deployment to the ${{ steps.deployConfig.outputs.environmentName }} environment'
last-updated: '${{github.event.head_commit.timestamp}}'
state: '${{ env.DEPLOY_STATE }}'
pipeline-id: '${{ github.repository }} ${{ github.workflow }}'
pipeline-display-name: 'Workflow: ${{ github.workflow }} (#${{ github.run_number }})'
pipeline-url: '${{github.event.repository.html_url}}/actions/runs/${{github.run_id}}'
environment-id: ${{ steps.deployConfig.outputs.environmentId }}
environment-display-name: ${{ steps.deployConfig.outputs.environmentName }}
environment-type: ${{ steps.deployConfig.outputs.environmentType }}

module-katalon-tests:
if: ${{ github.event_name == 'pull_request' }}
if: ${{ ((github.ref == 'refs/heads/dev') && (github.event_name == 'push') && (needs.ci.outputs.run-e2e == 'true')) ||
(github.event_name == 'workflow_dispatch')}}
needs: 'ci'
uses: VirtoCommerce/.github/.github/workflows/e2e.yml@main
uses: VirtoCommerce/.github/.github/workflows/e2e.yml@v3.200.20
with:
katalonRepo: 'VirtoCommerce/vc-quality-gate-katalon'
katalonRepoBranch: 'dev'
Expand All @@ -319,6 +243,24 @@ jobs:
installCustomModule: 'true'
customModuleId: ${{ needs.ci.outputs.moduleId }}
customModuleUrl: ${{ needs.ci.outputs.artifactUrl }}
platformDockerTag: 'dev-linux-latest'
storefrontDockerTag: 'dev-linux-latest'
secrets:
envPAT: ${{ secrets.REPO_TOKEN }}
katalonApiKey: ${{ secrets.KATALON_API_KEY }}

deploy-cloud:
if: ${{ ((github.ref == 'refs/heads/master') ||
(github.ref == 'refs/heads/dev')) &&
github.event_name == 'push' }}
needs: ci
uses: VirtoCommerce/.github/.github/workflows/[email protected]
with:
releaseSource: module
moduleId: ${{ needs.ci.outputs.moduleId }}
moduleVer: ${{ needs.ci.outputs.version }}
moduleBlob: ${{ needs.ci.outputs.blobId }}
jiraKeys: ${{ needs.ci.outputs.jira-keys }}
argoServer: 'argo.virtocommerce.cloud'
matrix: '{"include":${{ needs.ci.outputs.matrix }}}'
secrets: inherit
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# v3.200.12
# v3.200.20
name: Release hotfix

on:
Expand All @@ -12,12 +12,12 @@ on:

jobs:
test:
uses: VirtoCommerce/.github/.github/workflows/[email protected].12
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
secrets:
sonarToken: ${{ secrets.SONAR_TOKEN }}

build:
uses: VirtoCommerce/.github/.github/workflows/[email protected].12
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
with:
uploadPackage: 'true'
uploadDocker: 'false'
Expand All @@ -27,7 +27,7 @@ jobs:
envPAT: ${{ secrets.REPO_TOKEN }}

get-metadata:
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
outputs:
changelog: ${{ steps.changelog.outputs.changelog }}
steps:
Expand All @@ -43,7 +43,7 @@ jobs:
publish-github-release:
needs:
[build, test, get-metadata]
uses: VirtoCommerce/.github/.github/workflows/[email protected].12
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
with:
fullKey: ${{ needs.build.outputs.packageFullKey }}
changeLog: '${{ needs.get-metadata.outputs.changeLog }}'
Expand All @@ -57,7 +57,7 @@ jobs:
needs:
[publish-github-release]
if: ${{ github.event.inputs.incrementPatch == 'true' }}
runs-on: ubuntu-latest
runs-on: ubuntu-20.04
steps:
- name: Checkout
uses: actions/checkout@v3
Expand Down
8 changes: 4 additions & 4 deletions .github/workflows/publish-nugets.yml
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
# v3.200.13
# v3.200.20
name: Publish nuget

on:
Expand All @@ -12,12 +12,12 @@ on:

jobs:
test:
uses: VirtoCommerce/.github/.github/workflows/[email protected].13
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
secrets:
sonarToken: ${{ secrets.SONAR_TOKEN }}

build:
uses: VirtoCommerce/.github/.github/workflows/[email protected].13
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
with:
uploadPackage: 'true'
uploadDocker: 'false'
Expand All @@ -28,7 +28,7 @@ jobs:
publish-nuget:
needs:
[build, test]
uses: VirtoCommerce/.github/.github/workflows/[email protected].13
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
with:
fullKey: ${{ needs.build.outputs.packageFullKey }}
forceGithub: false
Expand Down
6 changes: 3 additions & 3 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
@@ -1,11 +1,11 @@
# v1.0.0
# v3.200.20
name: Release

on:
workflow_dispatch:

jobs:
release:
uses: VirtoCommerce/.github/.github/workflows/[email protected].12
uses: VirtoCommerce/.github/.github/workflows/[email protected].20
secrets:
envPAT: ${{ secrets.REPO_TOKEN }}
envPAT: ${{ secrets.REPO_TOKEN }}
2 changes: 1 addition & 1 deletion Directory.Build.props
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
<Project>
<!-- These properties will be shared for all projects -->
<PropertyGroup>
<VersionPrefix>3.207.0</VersionPrefix>
<VersionPrefix>3.208.0</VersionPrefix>
<VersionSuffix>
</VersionSuffix>
<VersionSuffix Condition=" '$(VersionSuffix)' != '' AND '$(BuildNumber)' != '' ">$(VersionSuffix)-$(BuildNumber)</VersionSuffix>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ namespace VirtoCommerce.InventoryModule.Data.Repositories
{
public class InventoryDbContext : DbContextWithTriggers
{
#pragma warning disable S109
public InventoryDbContext(DbContextOptions<InventoryDbContext> options)
: base(options)
{
Expand All @@ -24,11 +25,17 @@ protected override void OnModelCreating(ModelBuilder modelBuilder)
modelBuilder.Entity<InventoryEntity>().HasOne(x => x.FulfillmentCenter).WithMany()
.HasForeignKey(x => x.FulfillmentCenterId).IsRequired()
.OnDelete(DeleteBehavior.Cascade);
modelBuilder.Entity<InventoryEntity>().Property(x => x.BackorderQuantity).HasPrecision(18, 2);
modelBuilder.Entity<InventoryEntity>().Property(x => x.InStockQuantity).HasPrecision(18, 2);
modelBuilder.Entity<InventoryEntity>().Property(x => x.PreorderQuantity).HasPrecision(18, 2);
modelBuilder.Entity<InventoryEntity>().Property(x => x.ReorderMinQuantity).HasPrecision(18, 2);
modelBuilder.Entity<InventoryEntity>().Property(x => x.ReservedQuantity).HasPrecision(18, 2);

modelBuilder.Entity<FulfillmentCenterEntity>().ToTable("FulfillmentCenter").HasKey(x => x.Id);
modelBuilder.Entity<FulfillmentCenterEntity>().Property(x => x.Id).HasMaxLength(128).ValueGeneratedOnAdd();

base.OnModelCreating(modelBuilder);
}
#pragma warning restore S109
}
}
Loading

0 comments on commit a067e8f

Please sign in to comment.