Skip to content

Commit

Permalink
Add Random UUID Support
Browse files Browse the repository at this point in the history
Initial version including:

* UUID class to handle structural functions.
* Random (V4) UUID generation support.
  • Loading branch information
JamesMc86 committed Jan 8, 2020
1 parent efe486e commit c0de2c0
Show file tree
Hide file tree
Showing 23 changed files with 764 additions and 1 deletion.
5 changes: 4 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -14,4 +14,7 @@
# Metadata
*.aliases
*.lvlps
.cache/

# Build Folders
builds/
*.vip
68 changes: 68 additions & 0 deletions Jenkinsfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,68 @@

pipeline {
agent {
node {
label 'LV2015'
}
}
environment {
LV_VER = 2015
LV_BIT = 32
G_CLI_PARAMS = "--lv-ver ${env.LV_VER}"
VERSION = "0.1.0"
FULL_VERSION = VersionNumber(versionNumberString: '${BUILDS_ALL_TIME,X}', versionPrefix: "${VERSION}." , worstResultForIncrement: 'FAILURE')
}
options {
timeout(time:45, unit: 'MINUTES')
buildDiscarder(logRotator(numToKeepStr: '100'))
}
stages {
stage('Setup') {
steps {
script {
currentBuild.displayName = "${env.FULL_VERSION}"
}
echo "Building ${FULL_VERSION}"
bat "if not exist builds mkdir builds"
bat 'g-cli %G_CLI_PARAMS% vipcApply -- "ext\\G-UUID Dependencies.vipc" %LV_VER% %LV_BIT%'
}
}

stage('Unit Test LabVIEW') {
steps {
bat 'g-cli %G_CLI_PARAMS% viTester -- -xml "test_results.xml" "src\\G-UUID.lvproj"'
junit 'test_results.xml'
}
}
stage('Build Outputs') {
steps {
bat 'g-cli %G_CLI_PARAMS% vipBuild -- -versionNumber %FULL_VERSION% "src\\G UUID.vipb"'

}
}
stage('VI Analyzer') {
steps {
bat 'g-cli %G_CLI_PARAMS% wiresmith\\viAnalyzer -- -report "vi_analyzer.xml" "src\\G-UUID.lvproj"'
recordIssues enabledForFailure: true, qualityGates: [[threshold: 1, type: 'TOTAL_ERROR', unstable: true]], tools: [checkStyle(pattern: 'vi_analyzer.xml')]
}
}
stage('Release Steps') {
when { buildingTag() }
steps {
script {
currentBuild.description = "${env.VERSION} Release"
currentBuild.keepLog = true
}
}
}
}
post {
always {
step([$class: 'Mailer', notifyEveryUnstableBuild: true, recipients: emailextrecipients([culprits(), requestor(), upstreamDevelopers()]), sendToIndividuals: true])
archiveArtifacts artifacts: 'builds/*.zip', fingerprint: true
bat 'g-cli %G_CLI_PARAMS% quitLabVIEW'
}

}

}
29 changes: 29 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,31 @@
# G-UUID
A UUID Library for LabVIEW

## :ledger: Description

This provides UUID generation for LabVIEW for RFC 4122. Currently based on version 4 random UUIDs only but to be expanded.


## :rocket: Installation

A VI Package file will be provided for installation.

## :sunglasses: Usage

TBC

## :computer: Development Requirements

This code is build in LabVIEW 2015.

## :busts_in_silhouette: Contributing

If you would like to contribute - please claim an issue on Github or create one for what you want to work on.

## :beers: Credits

* [RFC 4122](https://tools.ietf.org/html/rfc4122)

## :page_facing_up: License

This project is (c) Customer and is not licensed for external use.
Binary file added ext/G-UUID Dependencies.vipc
Binary file not shown.
228 changes: 228 additions & 0 deletions src/G UUID.vipb

Large diffs are not rendered by default.

255 changes: 255 additions & 0 deletions src/G-UUID.lvproj

Large diffs are not rendered by default.

Binary file added src/Generate UUID V4 (Random).vi
Binary file not shown.
Binary file added src/UUID/As Bytes.vi
Binary file not shown.
Binary file added src/UUID/Format As String.vi
Binary file not shown.
Binary file added src/UUID/From Bytes.vi
Binary file not shown.
Binary file added src/UUID/Set Variant.vi
Binary file not shown.
Binary file added src/UUID/Set Version.vi
Binary file not shown.
77 changes: 77 additions & 0 deletions src/UUID/UUID.lvclass

Large diffs are not rendered by default.

Binary file added src/UUID/Variants.ctl
Binary file not shown.
Binary file added src/Wiresmith Analyzer Config.cfg
Binary file not shown.
101 changes: 101 additions & 0 deletions src/tests/UUID Structure Tests/UUID Structure Tests.lvclass

Large diffs are not rendered by default.

Binary file added src/tests/UUID Structure Tests/setUp.vi
Binary file not shown.
Binary file added src/tests/UUID Structure Tests/tearDown.vi
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file added src/tests/UUID Structure Tests/testExample.vit
Binary file not shown.
2 changes: 2 additions & 0 deletions src/wsbuild.ini
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
[VIAnalyzer]
Config = "/C/Users/james.WIRESMITH/Documents/Wiresmith Projects/Open Source Projects/G-UUID/src/Wiresmith Analyzer Config.cfg"

0 comments on commit c0de2c0

Please sign in to comment.