Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: release 1.0.0 of @mdf.js library #2

Merged
merged 56 commits into from
May 24, 2023
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
56 commits
Select commit Hold shift + click to select a range
a8bf6ea
feat(core): first version 1.0.0 (#1)
cjimenezsaiz Nov 18, 2022
a90473a
feat(mongo-provider): :sparkles: add option for collection creation i…
cjimenezsaiz Nov 19, 2022
6ba0958
style(style): :art: avoid the use of # as private in classed
cjimenezsaiz Nov 19, 2022
f0a5440
feat(mongo-provider): :pencil2: add new Factory interface to provider…
cjimenezsaiz Nov 21, 2022
a48dfb3
refactor(style): :pencil2: include CustomHeader type for Jobs and Fir…
cjimenezsaiz Nov 21, 2022
e152a33
ci: :adhesive_bandage: remove firehoses from sonarqube inspection
cjimenezsaiz Nov 21, 2022
8ee3794
refactor(style):
cjimenezsaiz Nov 21, 2022
c9860c1
fix: :bug: fix AMQP configuration options for Sender and Receiver
cjimenezsaiz Nov 23, 2022
862a168
fix(amqp-provider): :bug: fix AMQP session and default target
cjimenezsaiz Nov 23, 2022
51b052a
refactor(jobs): :recycle: refactor jobs identifiers to create a more …
cjimenezsaiz Nov 23, 2022
51b9bdb
fix(jobs):
cjimenezsaiz Nov 23, 2022
930bcbf
feat(firehose): :sparkles: add a new CreditFlow Source plug
cjimenezsaiz Nov 24, 2022
deba569
fix(firehose):
cjimenezsaiz Nov 25, 2022
e3f430d
refactor(firehose): :recycle: add Plug `error`events to error Register
cjimenezsaiz Nov 26, 2022
d52dae2
fix(redis-provider): :bug: fix event management of redis events
cjimenezsaiz Nov 28, 2022
65d9a77
feat(firehose): :sparkles: add `fatal` event to plugs to allow fireho…
cjimenezsaiz Nov 28, 2022
f85dd2b
refactor(firehose):
cjimenezsaiz Nov 29, 2022
5c785ac
feat(amqp-provider): :sparkles: added a new `reset` funtionality to A…
cjimenezsaiz Nov 29, 2022
08f1116
feat:
cjimenezsaiz Nov 29, 2022
3492a00
feat(core): :sparkles: add dotenv to manager config loader
cjimenezsaiz Nov 29, 2022
a9943ae
fix(firehose):
cjimenezsaiz Nov 29, 2022
a3a1526
refactor(firehose): :pencil2: add more exported types to firehose module
cjimenezsaiz Nov 30, 2022
02cd065
feat(service-config): :sparkles: add new provider for `service-config`
cjimenezsaiz Dec 4, 2022
6ea2e3b
test(service-config): :test_tube: rewrite some failed test
cjimenezsaiz Dec 4, 2022
f544050
test(service-config): :test_tube: fix text for CI environment
cjimenezsaiz Dec 4, 2022
bbb460b
test(service-config): :test_tube: fix CI environment test
cjimenezsaiz Dec 4, 2022
cb885fb
style(openc2): :label: update `openc2` types
cjimenezsaiz Dec 4, 2022
80d57d8
style(style): :recycle: refactor some classes over the core module
cjimenezsaiz Dec 6, 2022
cb08c31
feat(app-wrapper): :sparkles: add new app-wrapper module
cjimenezsaiz Dec 9, 2022
fbbea17
ci(ci): fix ci config
cjimenezsaiz Dec 9, 2022
c483fc6
style(firehose):
cjimenezsaiz Dec 10, 2022
6eb30bc
fix(openc2): :bug: fix stop method
cjimenezsaiz Dec 10, 2022
a979aed
test(openc2): :test_tube: fix some test
cjimenezsaiz Dec 10, 2022
89b8312
fix(redis-provider): :bug: fix a bug in connection process
cjimenezsaiz Dec 10, 2022
4e5271a
fix(service-config): :bug: fix error where the default config is not …
cjimenezsaiz Dec 10, 2022
95d8522
chore: wip
cjimenezsaiz Dec 12, 2022
bacdc47
fix(firehose): :bug: fix the use of retrybind in addCredits method
cjimenezsaiz Dec 13, 2022
4ed426c
style(style): :pencil2: fix some types in setup-manager
cjimenezsaiz Dec 13, 2022
3ed8135
chore(style): :lipstick: update types in setup-manager
cjimenezsaiz Dec 13, 2022
5d14f40
style(service-config): :pencil2: update types
cjimenezsaiz Dec 14, 2022
1d66cc6
fix(service-config): :bug: fix configuration validator options
cjimenezsaiz Dec 14, 2022
7336c16
refactor(app-wrapper): :recycle: change consumer to optional in the a…
cjimenezsaiz Dec 14, 2022
7b590ac
feat(app-wrapper): :sparkles: add setup-manager to appwrapper
cjimenezsaiz Dec 18, 2022
e2e9d86
test(app-wrapper): :white_check_mark: fix some flaky test
cjimenezsaiz Dec 18, 2022
ee1e6aa
fix(app-wrapper): :bug: change the name as optional
cjimenezsaiz Dec 18, 2022
18c6258
style(style): :art: update default values of app-wrapper
cjimenezsaiz Dec 18, 2022
c682f01
feat(service-config): :sparkles: load to `process.env` the env variab…
cjimenezsaiz Dec 22, 2022
5a23b7d
build(service-config): :sparkles: add readme file to rest api
cjimenezsaiz Dec 23, 2022
6c90535
feat(service-config): :sparkles: add a new option for config check in…
cjimenezsaiz Jan 4, 2023
ae9f364
fix(service-config): :bug: fix wrong dependencies export for types
cjimenezsaiz Jan 10, 2023
38da25e
chore(ci): :package: update some dependencies
cjimenezsaiz May 14, 2023
0c6e19d
feat(openc2): :sparkles: add REST API interface for commands to Consu…
cjimenezsaiz May 16, 2023
009402d
ci(ci): :green_heart: try to fix CI compilation problems
cjimenezsaiz May 16, 2023
f2db174
test(core): :test_tube: upgrade test with more anti-mutants patterns
cjimenezsaiz May 24, 2023
aaa2c22
docs(core): :memo: update the readme files of all the modules
cjimenezsaiz May 24, 2023
559f1f3
ci(ci): :green_heart: upgrade timeout for complete pipelines
cjimenezsaiz May 24, 2023
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
Next Next commit
feat(core): first version 1.0.0 (#1)
  • Loading branch information
cjimenezsaiz committed Nov 18, 2022
commit a8bf6eaeba42eee16edb7305e1bb80f5dcdcfb39
1 change: 1 addition & 0 deletions .bin/GitVersion-linux.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
mono /home/ubuntu/GitVersion/GitVersion.exe /output buildserver /nofetch
57 changes: 57 additions & 0 deletions .config/GitVersion.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
assembly-versioning-scheme: None
branches:
master:
regex: ^master
tag: ''
mode: ContinuousDeployment
increment: None
prevent-increment-of-merged-branch-version: true
track-merge-target: false
tracks-release-branches: false
is-release-branch: false
release:
regex: ^releases?[/-]
tag: beta
mode: ContinuousDeployment
increment: Minor
prevent-increment-of-merged-branch-version: true
track-merge-target: false
tracks-release-branches: false
is-release-branch: true
feature:
regex: ^features?[/-]
tag: useBranchName
mode: ContinuousDeployment
increment: Inherit
prevent-increment-of-merged-branch-version: true
track-merge-target: false
tracks-release-branches: false
is-release-branch: false
pull-request:
regex: ^(pull|pull\-requests|pr)[/-]
tag: PullRequest
mode: ContinuousDeployment
increment: Inherit
prevent-increment-of-merged-branch-version: false
tag-number-pattern: '[/-](?<number>\d+)[-/]'
track-merge-target: false
tracks-release-branches: false
is-release-branch: false
hotfix:
regex: ^hotfix(es)?[/-]
tag: beta
mode: ContinuousDeployment
increment: Patch
prevent-increment-of-merged-branch-version: false
track-merge-target: false
tracks-release-branches: false
is-release-branch: false
develop:
regex: ^dev(elop)?(ment)?$
tag: alpha
mode: ContinuousDeployment
increment: none
prevent-increment-of-merged-branch-version: true
track-merge-target: true
tracks-release-branches: true
is-release-branch: false
52 changes: 52 additions & 0 deletions .config/azure-pipelines.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
## Template for a monorepository based on GitFlow, Docker and DockerCompose in Netin Development Ecosystem
name: mdf-js$(Date:yyyyMMdd)$(Rev:.r)
## CI trigger based on GitFlow
trigger:
- master
- develop
- release/*
- hotfix/*
- feature/*
pr:
- master
- develop
## Netin - Variables
variables:
## Artifact name
- name: artifactName
value: 'mdf-js-api'
## Node version
- name: nodeVersion
value: '18'
## Releases Wiki page
- name: artifactWikiFileName
value: '@mdf.js%2Djs-%2D-API'
## GitFlow variables for branch maching
- template: mdf-pipelines-variables.yml
stages:
- stage: 'APP'
displayName: 'Application Build'
pool:
name: NUCHUB
jobs:
- job: 'CODE_QUALITY'
displayName: 'Code Quality Assurance'
workspace:
clean: all
timeoutInMinutes: 15
steps:
- checkout: self
clean: true
persistCredentials: true
fetchDepth: 0
- template: mdf-setup-gitversion.yml
- template: mdf-setup-node-and-yarn.yml
parameters:
nodeVersion: ${{variables.nodeVersion}}
- template: mdf-test-monorepo.yml
- template: mdf-test-sonarqube-analysis.yml
- template: mdf-publish-artifacts-lerna.yml
# - template: mdf-release-library-version.yml
# parameters:
# artifactName: ${{variables.artifactName}}
# artifactWikiFileName: ${{variables.artifactWikiFileName}}
13 changes: 13 additions & 0 deletions .config/customFormat.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"name": "",
"version": "",
"description": "",
"repository": "",
"email": "",
"url": "",
"licenses": "",
"copyright": "",
"licenseFile": "none",
"licenseText": "none",
"licenseModified": "no"
}
44 changes: 44 additions & 0 deletions .config/mdf-pipelines-variables.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
variables:
- group: NPM-Secrets
#- group: Netin-Signing
#- group: Netin-Release
- name: isMaster
value: ${{ eq(variables['Build.SourceBranch'], 'refs/heads/master') }}
- name: isDevelop
value: ${{ eq(variables['Build.SourceBranch'], 'refs/heads/develop') }}
- name: isRelease
value: ${{ startsWith(variables['Build.SourceBranch'], 'refs/heads/release/') }}
- name: isHotfix
value: ${{ startsWith(variables['Build.SourceBranch'], 'refs/heads/hotfix/') }}
- name: isFeature
value: ${{ startsWith(variables['Build.SourceBranch'], 'refs/heads/feature/') }}
- name: isPR
value: ${{ eq(variables['Build.Reason'], 'PullRequest') }}
- name: isManual
value: ${{ eq(variables['Build.Reason'], 'Manual') }}
- name: isBuildable
value: ${{ or(eq(variables['Build.SourceBranch'], 'refs/heads/master'), eq(variables['Build.SourceBranch'], 'refs/heads/develop'), startsWith(variables['Build.SourceBranch'], 'refs/heads/release/'), startsWith(variables['Build.SourceBranch'], 'refs/heads/hotfix/'), eq(variables['Build.Reason'], 'PullRequest')) }}
- name: imageTag
${{ if eq(variables.isFeature, true) }}:
value: 'nighty'
${{ if or(eq(variables.isRelease, true), eq(variables.isHotfix, true)) }}:
value: 'beta'
${{ if eq(variables.isDevelop, true) }}:
value: 'alpha'
${{ if eq(variables.isMaster, true) }}:
value: 'latest'
${{ if eq(variables.isPR, true) }}:
value: 'test'
- name: dockerTag
${{ if eq(variables.isFeature, true) }}:
value: $(Build.SourceBranchName)
${{ if eq(variables.isPR, true) }}:
value: $(Build.SourceBranchName)
${{ if or(eq(variables.isRelease, true), eq(variables.isHotfix, true)) }}:
value: 'beta'
${{ if eq(variables.isDevelop, true) }}:
value: 'alpha'
${{ if eq(variables.isMaster, true) }}:
value: 'latest'
- name: disable.coverage.autogenerate
value: 'true'
33 changes: 33 additions & 0 deletions .config/mdf-publish-artifacts-lerna.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
steps:
- task: Yarn@3
displayName: 'Install node_modules with devDependencies'
inputs:
projectDirectory: '.'
arguments: 'install'

- task: Yarn@3
displayName: Publish package to internal feed as oficial version
condition: and(succeeded(), eq(variables.isMaster, true))
inputs:
projectDirectory: '.'
arguments: 'lerna publish $(Build.BuildNumber) --amend --dist-tag latest --conventional-commits --loglevel silly -m "chore(release): publish %v" --yes'
customEndpoint: 'NPM-Registry'
continueOnError: true

- task: Yarn@3
displayName: Publish package to internal feed as beta version
condition: and(succeeded(), or(eq(variables.isRelease, true), eq(variables.isHotfix, true)))
inputs:
projectDirectory: '.'
arguments: 'lerna publish $(Build.BuildNumber) --amend --pre-dist-tag beta --loglevel silly -m "chore(release): publish %v" --yes'
customEndpoint: 'NPM-Registry'
continueOnError: true

- task: Yarn@3
displayName: Publish package to internal feed as alfa version
condition: and(succeeded(), eq(variables.isDevelop, true))
inputs:
projectDirectory: '.'
arguments: 'lerna publish $(Build.BuildNumber) --amend --dist-tag alpha --loglevel silly -m "chore(release): publish %v" --yes'
customEndpoint: 'NPM-Registry'
continueOnError: true
36 changes: 36 additions & 0 deletions .config/mdf-release-library-version.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# ## Netin - Parameters for release process of a new artifact version
# parameters:
# - name: artifactName
# displayName: NDF artifact mame
# type: string
# default: NameNotSet
# - name: artifactWikiFileName
# displayName: Name of the WIKI file
# default: $(artifactName)
# stages:
# - stage: 'RELEASE'
# condition: eq(variables.isMaster, true)
# displayName: 'Release process for ${{parameters.artifactName}} artifact for version $(Build.BuildNumber)'
# pool:
# name: NUCHUB
# jobs:
# - deployment: 'PROCESS'
# displayName: 'Perform the release publication'
# workspace:
# clean: 'all'
# timeoutInMinutes: 15
# environment:
# name: 'NETIN-PUBLIC-RELEASES'
# strategy:
# runOnce:
# deploy:
# steps:
# - checkout: self
# clean: true
# persistCredentials: true
# - template: mdf-setup-gitversion.yml
# - template: mdf-setup-node-and-yarn.yml
# - template: mdf-release-publish-release-notes.yml
# parameters:
# artifactName: ${{parameters.artifactName}}
# artifactWikiFileName: ${{parameters.artifactWikiFileName}}
110 changes: 110 additions & 0 deletions .config/mdf-release-publish-release-notes.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,110 @@
# # Netin - Parameters for Release notes generation and publish
# parameters:
# - name: artifactName
# displayName: NDF artifact mame
# type: string
# default: NameNotSet
# - name: artifactWikiFileName
# displayName: Name of the WIKI file
# default: $(artifactName)
# steps:
# - task: XplatGenerateReleaseNotes@3
# displayName: Generate Release Notes
# inputs:
# outputfile: 'RELEASE.md'
# templateLocation: 'InLine'
# inlinetemplate: |
# --------------------------------------------

# ## 🚀 **{{buildDetails.buildNumber}}** - {{date buildDetails.finishTime "DD-MM-YYYY"}}
# {{#if (hasWorkItemType this.workItems 'Feature')}}

# ### 🆕 Features

# {{#forEach this.workItems}}
# {{#if (eq (lookup this.fields 'System.WorkItemType' ) 'Feature')}}
# - #{{this.id}}
# {{#if (lookup this.fields 'System.ReleaseNotes')}}
# - {{ sanitize (lookup this.fields 'System.ReleaseNotes')}}
# {{/if}}
# {{/if}}
# {{/forEach}}


# {{/if}}
# {{#if (hasWorkItemType this.workItems 'Requirement')}}
# ### 🔧 Notable changes

# {{#forEach this.workItems}}
# {{#if (eq (lookup this.fields 'System.ReleaseNotes' ) 'Requirement')}}
# - #{{this.id}}
# {{#if (lookup this.fields 'System.Description')}}
# - {{ sanitize (lookup this.fields 'System.ReleaseNotes')}}
# {{/if}}
# {{/if}}
# {{/forEach}}


# {{/if}}
# {{#if (hasWorkItemType this.workItems 'Bug')}}
# ### 🐞 Bugfixes

# {{#forEach this.workItems}}
# {{#if (eq (lookup this.fields 'System.WorkItemType' ) 'Bug')}}
# - #{{this.id}}
# {{#if (lookup this.fields 'System.ReleaseNotes')}}
# - {{sanitize (lookup this.fields 'System.ReleaseNotes')}}
# {{/if}}
# {{/if}}
# {{/forEach}}


# {{/if}}
# {{#if (hasWorkItemType this.workItems 'Upgrade')}}
# ### ⬆️ Upgrades

# {{#forEach this.workItems}}
# {{#if (eq (lookup this.fields 'System.WorkItemType' ) 'Upgrade')}}
# - #{{this.id}}
# {{#if (lookup this.fields 'System.ReleaseNotes')}}
# - {{sanitize (lookup this.fields 'System.ReleaseNotes')}}
# {{/if}}
# {{/if}}
# {{/forEach}}


# {{/if}}
# checkStage: true
# stopOnRedeploy: true
# sortWi: true
# dumpPayloadToConsole: true
# dumpPayloadToFile: false
# replaceFile: true
# getParentsAndChildren: true
# getAllParents: true
# getIndirectPullRequests: False
# stopOnError: False
# considerPartiallySuccessfulReleases: False
# customHandlebarsExtensionCode: |
# module.exports = {
# hasWorkItemType: function (array, typeName) {
# return array.some(workItem => workItem.fields['System.WorkItemType'] === typeName);
# }
# }
# - task: WikiUpdaterTask@1
# displayName: Push release notes to WIKI
# inputs:
# repo: 'https://devopmytra.visualstudio.com/NetinSystems/_git/NS-Artifacts_Release_Notes-WIKI'
# filename: '${{parameters.artifactWikiFileName}}.md'
# replaceFile: false
# dataIsFile: true
# sourceFile: 'RELEASE.md'
# message: 'doc(wiki): update release notes for ${{parameters.artifactName}}'
# gitname: '$BUILD_REQUESTEDFOR'
# gitemail: '$BUILD_REQUESTEDFOREMAIL'
# user: $(WIKI_REPO_USER)
# password: $(WIKI_REPO_PAT)
# useAgentToken: false
# trimLeadingSpecialChar: true
# fixSpaces: true
# insertLinefeed: false
22 changes: 22 additions & 0 deletions .config/mdf-setup-gitversion.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
steps:
- task: Bash@3
displayName: 'Set git config email & name'
inputs:
targetType: 'inline'
script: |
git config --global user.email $BUILD_REQUESTEDFOREMAIL
git config --global user.name "$BUILD_REQUESTEDFOR"
echo $BUILD_REQUESTEDFOREMAIL
echo "$BUILD_REQUESTEDFOR"

- task: gitversion/setup@0
displayName: 'Use GitVersion Setup'
inputs:
versionSpec: '5.x'

- task: gitversion/execute@0
displayName: 'Use GitVersion Execute'
inputs:
useConfigFile: true
configFilePath: './.config/GitVersion.yml'
name: 'Version'
Loading