Compare commits

..

No commits in common. "master" and "V0.2" have entirely different histories.
master ... V0.2

15 changed files with 130 additions and 1936 deletions

View File

@ -1,141 +0,0 @@
---
kind: pipeline
type: docker
name: convert
platform:
os: linux
arch: amd64
clone:
disable: false
steps:
- name: "git - pre format"
when:
branch:
- format-branch
image: alpine/git:latest
commands:
- git config credential.helper '!f() { sleep 1; echo "username=$${GIT_USER}"; echo "password=$${GIT_PASSWORD}"; }; f'
- git fetch
- git checkout -b product-development
- git merge --squash --no-commit --strategy-option=theirs format-branch
environment:
GIT_PASSWORD:
from_secret: GIT_PASSWORD
GIT_USER:
from_secret: GIT_USER
- name: "convert to xml"
image: sigyl/zone-10-batch2yaml:latest
when:
branch:
- master
- product-development
commands:
- node /app/servers/apps/batch2yaml/build/index.js . xml
volumes:
- name: dockersock
path: /var/run
- name: "convert to yml"
image: sigyl/zone-10-batch2yaml:latest
when:
branch:
- format-branch
commands:
- node /app/servers/apps/batch2yaml/build/index.js . delete
- node /app/servers/apps/batch2yaml/build/index.js . yml
volumes:
- name: dockersock
path: /var/run
- name: "git - status"
when:
branch:
- master
- deployed
image: alpine/git:latest
commands:
- git status
volumes:
- name: dockersock
path: /var/run
- name: "git - deployed"
when:
branch:
- master
image: alpine/git:latest
commands:
- git config credential.helper '!f() { sleep 1; echo "username=$${GIT_USER}"; echo "password=$${GIT_PASSWORD}"; }; f'
- git add -A
- git commit -m "deploying- $${DRONE_COMMIT_MESSAGE}"
- git push -f origin HEAD:deployed
environment:
GIT_PASSWORD:
from_secret: GIT_PASSWORD
GIT_USER:
from_secret: GIT_USER
- name: "git - product-development - build"
when:
branch:
- product-development
image: alpine/git:latest
commands:
- git config credential.helper '!f() { sleep 1; echo "username=$${GIT_USER}"; echo "password=$${GIT_PASSWORD}"; }; f'
- git add -A
- git commit -m "$${DRONE_COMMIT_MESSAGE}"
- git push -f origin HEAD:product-development-build
environment:
GIT_PASSWORD:
from_secret: GIT_PASSWORD
GIT_USER:
from_secret: GIT_USER
- name: "git - product-development"
when:
branch:
- format-branch
image: alpine/git:latest
commands:
- git config credential.helper '!f() { sleep 1; echo "username=$${GIT_USER}"; echo "password=$${GIT_PASSWORD}"; }; f'
- git add -A
- git commit -m "converted to yml - $${DRONE_COMMIT_MESSAGE}"
- git push -f origin HEAD:product-development
environment:
GIT_PASSWORD:
from_secret: GIT_PASSWORD
GIT_USER:
from_secret: GIT_USER
volumes:
- name: dockersock
path: /var/run
services:
- name: docker
image: docker:19.03.12-dind@sha256:8dded163e463f4a59bf305b3dca98e312b2cfb89a43da3872e48f95a7554c48f
privileged: true
volumes:
- name: dockersock
path: /var/run
- name: ca
path: /etc/docker/certs.d
- name: daemonjson
path: /etc/docker/daemon.json
volumes:
- name: dockersock
temp: {}
- name: ca
host:
path: /etc/docker/certs.d
- name: daemonjson
host:
path: /etc/docker/daemon.json
trigger:
branch:
- format-branch
- master
- product-development
event:
- push

View File

@ -1,87 +0,0 @@
name: convert-to-yml
run-name: ${{ github.actor }} is learning GitHub Actions
on:
push:
branches:
- 'build/**'
jobs:
develop-branch:
runs-on: ubuntu-latest
steps:
# https://github.com/RouxAntoine/checkout/tree/v3.5.4
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
fetch-depth: '10'
- uses: http://sigyl.com:3000/actions/setup-node@v3
with:
node-version: '20'
- run: git fetch
- env: env
run: printenv
- uses: http://sigyl.com:3000/actions/batch2yaml@master
with:
action: yml
path: '.'
- name: get development branch name
run: |
firstString=${{ github.ref_name }}
secondString="develop"
echo ::set-env name=DEVELOPMENT_BRANCH::${firstString/build\//"$secondString"\/}
- name: config
run: |
git config --global user.name "${{ github.actor }}"
git config --global user.email "${{ github.event.pusher.email }}"
- name: commit
run: |
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.DEVELOPMENT_BRANCH }}"
- name: status
run: |
git branch -r
echo $(git branch -r | grep -Fx " origin/${{ env.DEVELOPMENT_BRANCH }}" | wc -c)
- name: push
run: |
if [[ $(git branch -r | grep -Fx " origin/${{ env.DEVELOPMENT_BRANCH }}" | wc -c) -eq 0 ]]; then
ls
git log -5
git status
git rebase -Xtheirs origin/master
ls
git log -4
git status
echo no development branch so pushing
git push origin HEAD:${{ env.DEVELOPMENT_BRANCH }};
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output tea;
chmod +x ./tea;
./tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.BOT_TOKEN }};
if [[ $(./tea pr ls -f=base,head -o=csv | grep grep "\"master\",\"${{ env.DEVELOPMENT_BRANCH }}\"" | head -c1 | wc -c) -eq 0 ]]; then
./tea pr c --base=master --head=${{ env.DEVELOPMENT_BRANCH }} --description="
development pull request
this PR is instigated by and will been built on [${{ github.ref_name }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})
" -t="WIP: ${{ github.event.head_commit.message }}"
fi
echo 'pushed new branch and created pr';
else
if [[ $(git diff origin/${{ env.DEVELOPMENT_BRANCH }} | wc -c) -ne 0 ]]; then
#git rebase -Xtheirs origin/${{ env.DEVELOPMENT_BRANCH }}
git clone ${{ github.serverUrl }}/${{ github.repository }} ../cloned
git -C ../cloned fetch origin #--depth=1
git -C ../cloned checkout $DEVELOPMENT_BRANCH || git -C ../cloned checkout -b $DEVELOPMENT_BRANCH
mv ../cloned/.git ..
rm -rf ../cloned
cp -r . ../cloned
rm -rf ../cloned/.git
mv ../.git ../cloned
mv .git/config ../cloned/.git
rm -r ./*
rm -r .git
mv ../cloned/* .
mv ../cloned/.git .
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.DEVELOPMENT_BRANCH }}"
git push origin HEAD:${{ env.DEVELOPMENT_BRANCH }};
else
echo 'no changes so no push'
fi;
fi

View File

@ -1,13 +0,0 @@
name: Changelog
on:
release:
types:
- created
jobs:
changelog:
runs-on: ubuntu-20.04
steps:
- name: "✏️ Generate release changelog"
uses: heinrichreimer/action-github-changelog-generator@v2.3
with:
token: ${{ secrets.BOT_TOKEN }}

View File

@ -1,89 +0,0 @@
name: build-develop-branch
run-name: ${{ github.actor }} is learning GitHub Actions
on:
push:
branches:
- 'develop/**'
jobs:
build-branch:
runs-on: ubuntu-latest
steps:
# https://github.com/RouxAntoine/checkout/tree/v3.5.4
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
fetch-depth: '10'
- env: env
run: printenv
- name: get tea
run: |
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output ../tea
chmod +x ../tea
../tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.BOT_TOKEN }}
- uses: http://sigyl.com:3000/actions/setup-node@v3
with:
node-version: '20'
- uses: http://sigyl.com:3000/actions/batch2yaml@master
with:
action: xml
path: '.'
- run: git fetch
- name: config
run: |
git config --global user.name "${{ github.actor }}"
git config --global user.email "${{ github.event.pusher.email }}"
- name: get build branch name
run: |
firstString=${{ github.ref_name }}
secondString="build"
echo ::set-env name=BUILD_BRANCH::${firstString/develop\//"$secondString"\/}
- name: status
run: |
ls
- name: push
run: |
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.BUILD_BRANCH }} "
if [[ $(git branch -r | grep -Fx " origin/${{ env.BUILD_BRANCH }}" | wc -c) -eq 0 ]]; then
git push origin HEAD:${{ env.BUILD_BRANCH }};
else
if [[ $(git diff origin/${{ env.BUILD_BRANCH }} | wc -c) -ne 0 ]]; then
#git rebase -Xtheirs origin/${{ env.BUILD_BRANCH }}
git clone ${{ github.serverUrl }}/${{ github.repository }} ../cloned
git -C ../cloned fetch origin #--depth=1
git -C ../cloned checkout $BUILD_BRANCH || git -C ../cloned checkout -b $BUILD_BRANCH
mv ../cloned/.git ..
rm -rf ../cloned
cp -r . ../cloned
rm -rf ../cloned/.git
mv ../.git ../cloned
mv .git/config ../cloned/.git
rm -r ./*
rm -r .git
mv ../cloned/* .
mv ../cloned/.git .
git add -A
git commit -a -m "${{ github.ref_name }} -> ${{ env.BUILD_BRANCH }} "
git push origin HEAD:${{ env.BUILD_BRANCH }}
else
echo 'no changes so no push'
fi;
fi;
- name: make PR
run: |
../tea pr ls -f=base,head -o=csv
if [[ $(../tea pr ls -f=base,head -o=csv | grep "\"master\",\"${{ github.ref_name }}\"" | head -c1 | wc -c) -eq 0 ]]; then
../tea pr c --base=master --head=${{ github.ref_name }} --description="
development pull request
this PR is will been built on [${{ github.ref_name }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})
" -t="WIP: ${{ github.event.head_commit.message }}"
fi
- name: get PR number
run: |
pr=$(../tea pr ls -f=base,head,index -o csv | grep "\"master\",\"${{ github.ref_name }}\"" | tr -d ' ' | tr "," "\n" | head -n 4 | tail -1)
export PR="${pr//[\"\'\`]/}"
echo ::set-env name=PR::$PR
- name: make pull request comment
run: |
../tea c $PR "this branch has been built on [${{ env.BUILD_BRANCH }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})"

View File

@ -1,35 +0,0 @@
name: build-develop-branch
run-name: ${{ github.actor }} is learning GitHub Actions
on:
pull_request:
types:
- closed
- deleted
branches:
- master
jobs:
delete-develop:
if: ${{ ! startsWith(github.head_ref, 'develop/') }}
runs-on: ubuntu-latest
steps:
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
- name: delete develop branch
id: delete_develop_branch
run: git push origin --delete ${{ github.head_ref }}
continue-on-error: true
- uses: mainmatter/continue-on-error-comment@v1
with:
repo-token: ${{ secrets.BOT_TOKEN }}
outcome: ${{ steps.delete_develop_branch.outcome }}
test-id: Error code ${{ matrix.code }}
- name: get build branch name
run: |
firstString=${{ github.head_ref }}
secondString="build"
echo ::set-env name=BUILD_BRANCH::${firstString/develop\//"$secondString"\/}s
- name: delete build branch
run: git push origin --delete ${{ env.BUILD_BRANCH }}

View File

@ -1,24 +0,0 @@
name: master-pushed
run-name: ${{ github.actor }} is learning GitHub Actions
on:
push:
branches:
- 'master'
jobs:
new release:
runs-on: ubuntu-latest
steps:
- name: get tea
run: |
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output ../tea
chmod +x ../tea
../tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.BOT_TOKEN }}
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
- name: bump release
run: |
export version=$(../tea r ls -o=simple | head -n 1 | tr " " "\n" | head -n 1 | awk -F. '{$NF = $NF + 1;} 1' | sed 's/ /./g')
../tea r c --note="this isrelease ${version}" --tag=${version} --title=${version} --target=${{ github.sha }}
echo ::set-env name=VERSION::$version

View File

@ -1,54 +0,0 @@
name: pr-open
run-name: ${{ github.actor }} is learning GitHub Actions
on:
pull_request:
types:
- reopened
branches:
- 'master'
jobs:
build-branch:
runs-on: ubuntu-latest
steps:
# https://github.com/RouxAntoine/checkout/tree/v3.5.4
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
- uses: http://sigyl.com:3000/actions/setup-node@v3
with:
node-version: '20'
- uses: http://sigyl.com:3000/actions/batch2yaml@master
with:
action: xml
path: '.'
- name: get PR number
run: |
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output tea
chmod +x ./tea
./tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.BOT_TOKEN }}
echo ::set-env name=PR::$(./tea pr ls -f=base,head,index | grep "| master | ${{ github.ref_name }} |" | tr -d ' ' | tr "|" "\n" | head -n 4 | tail -1)
rm ./tea
- name: get build branch name
run: |
firstString=${{ github.ref_name }}
secondString="build"
echo ::set-env name=BUILD_BRANCH::${firstString/develop\//"$secondString"\/}
- name: GIT commit and push all changed files
env:
CI_COMMIT_MESSAGE: Reopened PR copnverted to xml.
CI_COMMIT_AUTHOR: Continuous Integration
run: |
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}"
git config --global user.email "username@users.noreply.github.com"
git checkout -b ${{ env.BUILD_BRANCH }}
git add -A
git commit -a -m "${{ env.CI_COMMIT_MESSAGE }} yml files converted to xml"
git push origin HEAD:${{ env.BUILD_BRANCH }}
- name: make pull request comment
run: |
curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output tea
chmod +x ./tea
./tea c $PR "this branch has been built on [${{ env.BUILD_BRANCH }}](${{ github.serverUrl }}/${{ github.repository }}/src/branch/${{ env.BUILD_BRANCH }})"

View File

@ -1,23 +0,0 @@
on:
pull_request:
branches: [master]
jobs:
prettier:
runs-on: ubuntu-latest
steps:
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
# Make sure the actual branch is checked out when running on pull requests
ref: ${{ github.head_ref }}
# This is important to fetch the changes to the previous commit
fetch-depth: 0
- name: Prettify code
uses: creyD/prettier_action@v4.3
with:
# This part is also where you can pass other options, for example:
prettier_options: --write **/*.{js,md}
only_changed: true

View File

@ -1,34 +0,0 @@
name: convert-to-xml
run-name: ${{ github.actor }} is learning GitHub Actions
on:
push:
tags:
- '*'
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
fetch-depth: '10'
- name: ls
run: ls
- uses: actions/setup-node@v3
with:
node-version: '20'
- uses: http://sigyl.com:3000/actions/batch2yaml@master
with:
action: xml
path: '.'
- name: GIT commit and push all changed files
env:
CI_COMMIT_MESSAGE: approved yml conveted to xml.
CI_COMMIT_AUTHOR: Continuous Integration
run: |
echo ${{ github.ref_name }}
git config --global user.name "${{ env.CI_COMMIT_AUTHOR }}"
git config --global user.email "username@users.noreply.github.com"
git add -A
git commit -a -m "${{ github.ref_name }} -> refs/heads/deployed/${{ github.ref_name }} "
git push -f origin HEAD:refs/heads/deployed/${{ github.ref_name }}

View File

@ -1,28 +0,0 @@
name: tea
on:
workflow_call:
secrets:
token:
required: true
jobs:
tea:
runs-on: ubuntu-latest
steps:
- name: get tea
run: |
echo tea please!
#curl https://dl.gitea.com/tea/0.9.2/tea-0.9.2-linux-386 --output ../tea
#chmod +x ../tea
#../tea login add -n=this --url=${{ github.server_url}} -t=${{ secrets.token }}
#echo thank you!
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: http://sigyl.com:3000/actions/checkout@v3.5.4
with:
token: ${{ secrets.BOT_TOKEN }}
fetch-depth: '10'
- name: ls
run: ls

2
.gitignore vendored
View File

@ -1,4 +1,4 @@
*.cfg
equipment-model.cfg
logs
journals
restart

106
README.md
View File

@ -1,100 +1,6 @@
# batch-example
This repository will store and allow versioning and approval of a batch configuration.
This repository **only** contains exported configuration. It does not contain any binary files (eg equipment-model.cfg nor system state or log files). These are excluded using the **.gitignore** file.
## change process
tea is here (i had to change docker file to just be based on node:latest)
https://gitea.com/gitea/tea/src/branch/main/docs/CLI.md
On ?tag ? push to master
clone master
branch deployed
yml -> xml
push deployed
pull to production PC and import
pull to development, import, modify, export
push from development to format branch
on format-branch pull, xml -> yml, push to product-development and PR
### FTBatch development pc on development branch
```sh
?git branch -D format-branch
git checkout format-branch
git merge deployed
```
make changes and export files
commit and push back to server
```sh
git add -A
git commit
git push origin format-branch
```
### format-bot pc
```sh
git branch -D format-branch
git fetch origin
git checkout -b format-branch
git checkout master
git pull
git branch -D product-development
git checkout -b product-development
git merge --squash --no-commit --no-ff --strategyoption=theirs format-branch
```
run the formatter
```sh
git add -A
git commit
git push origin product-development
git push origin --delete format-branch
```
create a pull request
```sh
git fetch --tags
gotea pr c --base=master --head=product-development --repo another-user/batch-example --title="WIP: this is a PR! it rocks!"
```
closing a pull request (not used)
```sh
gotea pr close --repo another-user/batch-example 11
```
build
```sh
git checkout master
git pull
git checkout deployed
git merge master
```
make xml files
```sh
git add -A
git commit
git push origin deployed
```
# batch-example
This repository will store and allow versioning and approval of a batch configuration.
This repository **only** contains exported configuration. It does not contain any binary files (eg equipment-model.cfg nor system state or log files). These are excluded using the **.gitignore** file.

View File

@ -6,22 +6,22 @@
SchemaVersion: '71'
- Version: '1.00'
- Area:
- UniqueName: AREA1444
- UniqueName: AREA1
- EnumerationSet:
- UniqueName: PHASE_FAILURES
- Type: '0'
- EnumerationSet:
- UniqueName: YES_NO
- Type: '1'
- Member:
- Name: YES
- Ordinal: '19'
- Ordinal: '1'
- Member:
- Name: NO
- Ordinal: '0'
- EnumerationSet:
- UniqueName: PHASE_FAILURES
- Type: '0'
- EnumerationSet:
- UniqueName: $TIMER_TYPE
- Type: '13'
- Type: '1'
- Member:
- Name: COUNT_DOWN
- Ordinal: '0'
@ -62,6 +62,18 @@
- LocalServer: '1'
- RemoteServerLocation: null
- WatchdogProtocol: '1'
- SignatureTemplate:
- Name: Template
- Index: '1'
- LastSignoff: '0'
- Signoff:
- Index: '1'
- Meaning: ok
- Comment: Optional
- Permission:
- DomainOrComputer: null
- UserOrGroup: Engineers
- UserIsGroup: 'true'
- CommandVerificationPolicies:
- AbortCmd:
- SignatureTemplateName: null
@ -124,9 +136,9 @@
- Name: Begin Approvals
- Id: '-1'
- StepOrder: '1'
- Required: 1q
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- Required: '1'
- ApproveSignatureTemplateName: Template
- RevertSignatureTemplateName: Template
- Description: Used to formally begin the approval process.
- RecipeApprovalStep:
- Name: Confirm Author
@ -135,9 +147,9 @@
- Required: '0'
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- Description: Confirmation by the author of the recipe tgabghatcdcscsvdsvdsvsxsxsdit is ready for h v vredcdview.s...gfhhh....
- Description: Confirmation by the author of the recipe that it is ready for review.
- RecipeApprovalStep:
- Name: Reviqedcdw Recipe
- Name: Review Recipe
- Id: '-3'
- StepOrder: '3'
- Required: '0'
@ -157,16 +169,16 @@
- Id: '-5'
- StepOrder: '2'
- Required: '1'
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- ApproveSignatureTemplateName: Template
- RevertSignatureTemplateName: Template
- Description: Confirmation that this step can be available for use by others.
- RecipeApprovalStep:
- Name: Release Recipe to Production
- Id: '-6'
- StepOrder: '2'
- Required: '1'
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- ApproveSignatureTemplateName: Template
- RevertSignatureTemplateName: Template
- Description: Confirmation that this recipe can be available to put on the batch list.
- ExpeditedApprovalsProcess:
- RecipeApprovalStep:
@ -174,16 +186,16 @@
- Id: '-7'
- StepOrder: '1'
- Required: '1'
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- ApproveSignatureTemplateName: Template
- RevertSignatureTemplateName: Template
- Description: Confirmation that this step can be available for use by others.
- RecipeApprovalStep:
- Name: Release Recipe to Production
- Id: '-8'
- StepOrder: '1'
- Required: '1'
- ApproveSignatureTemplateName: null
- RevertSignatureTemplateName: null
- ApproveSignatureTemplateName: Template
- RevertSignatureTemplateName: Template
- Description: Confirmation that this recipe can be available to put on the batch list.
- RecipeApprovalProcessConfigured: '0'
- EnableRecipeVersioning: '0'
@ -933,15 +945,43 @@
- SystemCreated: 'false'
- Type: Standard
- DefaultControllerProgramName: null
- NumberOfParameterTags: '0'
- NumberOfParameterTags: '1'
- NumberOfReportTags: '0'
- NumberOfRequestTags: '0'
- NumberOfMessagePartners: '0'
- ParameterTagLockEnabled: 'true'
- RecipeParameter:
- Name: QUANTITY
- ID: '1'
- Type: Real
- Scale: 'false'
- DownloadFlags: '65535'
- Contexts: null
- RealDefault: '0'
- RealMin: '0'
- RealMax: '100'
- EngineeringUnits: ENG. UNITS
- ParameterLimit:
- VerificationMethod: No_Limits
- LimitScale: 'false'
- NormalAction: None
- NormalSignatureTemplate: null
- HighLowAction: SignatureTemplate
- HighLowSignatureTemplate: null
- HighValue: null
- LowValue: null
- HighHighLowLowAction: SignatureTemplate
- HighHighLowLowSignatureTemplate: null
- HighHighValue: null
- LowLowValue: null
- HighHighHighLowLowLowAction: SignatureTemplate
- HighHighHighLowLowLowSignatureTemplate: null
- HighHighHighValue: null
- LowLowLowValue: null
- ProcessCell:
- attributes:
XPos: '160'
YPos: '73'
XPos: '97'
YPos: '61'
- UniqueName: PROCESS_CELL1
- Class: PCELL_CLS1
- UniqueID: '1'
@ -959,10 +999,11 @@
- HyperlinkString: null
- ERPAlias: null
- ConfiguredUnitName: UNIT1
- ConfiguredUnitName: UNIT2
- Unit:
- attributes:
XPos: '101'
YPos: '84'
XPos: '115'
YPos: '75'
- UniqueName: UNIT1
- Class: UNIT_CLS1
- UniqueID: '2'
@ -980,12 +1021,33 @@
- HyperlinkString: null
- HyperlinkString: null
- ERPAlias: null
- ConfiguredEquipmentModuleName: PHASE11
- ConfiguredEquipmentModuleName: PHASE_ONE
- Unit:
- attributes:
XPos: '326'
YPos: '164'
- UniqueName: UNIT2
- Class: UNIT_CLS1
- UniqueID: '4'
- Logix5000UID: '0'
- Server: null
- MaxOwners: '1'
- CrossInvocationString: null
- CrossInvocationString: null
- CrossInvocationString: null
- CrossInvocationString: null
- CrossInvocationString: null
- HyperlinkString: null
- HyperlinkString: null
- HyperlinkString: null
- HyperlinkString: null
- HyperlinkString: null
- ERPAlias: null
- EquipmentModule:
- attributes:
XPos: '266'
YPos: '225'
- UniqueName: PHASE11
XPos: '190'
YPos: '168'
- UniqueName: PHASE_ONE
- RecipePhase: PHASE1
- EquipmentPhaseType: TAGPHASE
- UniqueID: '3'
@ -1003,7 +1065,7 @@
- ERPAlias: null
- UploadDownloadFlags: '0'
- InstructionBasedConfiguration:
- InstructionFilePathname: instruction.htm
- InstructionFilePathname: instruction
- CreateParameterLimitTag: 'false'
- CreateReportLimitTag: 'false'
- OnControlScanRate: '1000'
@ -1012,83 +1074,91 @@
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.OC
- ReadItemName: PHASE_ONE.OC
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.OCW
- WriteItemName: PHASE_ONE.OCW
- ControlTagFailure:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.F
- ReadItemName: PHASE_ONE.F
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.FW
- WriteItemName: PHASE_ONE.FW
- ControlTagOwner:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.W
- ReadItemName: PHASE_ONE.W
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.WW
- WriteItemName: PHASE_ONE.WW
- ControlTagPause:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.P
- ReadItemName: PHASE_ONE.P
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.PW
- WriteItemName: PHASE_ONE.PW
- ControlTagPaused:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.PD
- ReadItemName: PHASE_ONE.PD
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.PDW
- WriteItemName: PHASE_ONE.PDW
- ControlTagRequest:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.RQ
- ReadItemName: PHASE_ONE.RQ
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.RQW
- WriteItemName: PHASE_ONE.RQW
- ControlTagSingleStep:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.SS
- ReadItemName: PHASE_ONE.SS
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.SSW
- WriteItemName: PHASE_ONE.SSW
- ControlTagStatus:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.ST
- ReadItemName: PHASE_ONE.ST
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.STW
- WriteItemName: PHASE_ONE.STW
- ControlTagStepIndex:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.SI
- ReadItemName: PHASE_ONE.SI
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.SIW
- WriteItemName: PHASE_ONE.SIW
- ControlTagUnit:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.UN
- ReadItemName: PHASE_ONE.UN
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.UNW
- WriteItemName: PHASE_ONE.UNW
- ParameterTag:
- Server: InstructionBasedServer
- DataType: String
- VerificationMethod: No_Limits
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE_ONE.P01
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE_ONE.P01W
- RequestTag:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.Q01
- ReadItemName: PHASE_ONE.Q01
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.Q01W
- WriteItemName: PHASE_ONE.Q01W
- RequestTag:
- Server: InstructionBasedServer
- DataType: Integer
- ReadAccessPath: INSTRUCTIONS
- ReadItemName: PHASE11.Q02
- ReadItemName: PHASE_ONE.Q02
- WriteAccessPath: INSTRUCTIONS
- WriteItemName: PHASE11.Q02W
- WriteItemName: PHASE_ONE.Q02W

File diff suppressed because it is too large Load Diff

160
try.js
View File

@ -1,160 +0,0 @@
/**
* Copyright (c) Meta Platforms, Inc. and affiliates.
*
* This source code is licensed under the MIT license found in the
* LICENSE file in the root directory of this source tree.
*/
import * as React from "react";
import ReactVersion from "shared/ReactVersion";
import { LegacyRoot } from "react-reconciler/src/ReactRootTags";
import {
createContainer,
updateContainer,
injectIntoDevTools,
} from "react-reconciler/src/ReactFiberReconciler";
import Transform from "art/core/transform";
import Mode from "art/modes/current";
import FastNoSideEffects from "art/modes/fast-noSideEffects";
import { TYPES, childrenAsString } from "./ReactARTInternals";
Mode.setCurrent(
// Change to 'art/modes/dom' for easier debugging via SVG
FastNoSideEffects,
);
/** Declarative fill-type objects; API design not finalized */
const slice = Array.prototype.slice;
class LinearGradient {
constructor(stops, x1, y1, x2, y2) {
this._args = slice.call(arguments);
}
applyFill(node) {
node.fillLinear.apply(node, this._args);
}
}
class RadialGradient {
constructor(stops, fx, fy, rx, ry, cx, cy) {
this._args = slice.call(arguments);
}
applyFill(node) {
node.fillRadial.apply(node, this._args);
}
}
class Pattern {
constructor(url, width, height, left, top) {
this._args = slice.call(arguments);
}
applyFill(node) {
node.fillImage.apply(node, this._args);
}
}
/** React Components */
class Surface extends React.Component {
componentDidMount() {
const { height, width } = this.props;
this._surface = Mode.Surface(+width, +height, this._tagRef);
this._mountNode = createContainer(
this._surface,
LegacyRoot,
null,
false,
false,
"",
);
updateContainer(this.props.children, this._mountNode, this);
}
componentDidUpdate(prevProps, prevState) {
const props = this.props;
if (props.height !== prevProps.height || props.width !== prevProps.width) {
this._surface.resize(+props.width, +props.height);
}
updateContainer(this.props.children, this._mountNode, this);
if (this._surface.render) {
this._surface.render();
}
}
componentWillUnmount() {
updateContainer(null, this._mountNode, this);
}
render() {
// This is going to be a placeholder because we don't know what it will
// actually resolve to because ART may render canvas, vml or svg tags here.
// We only allow a subset of properties since others might conflict with
// ART's properties.
const props = this.props;
// TODO: ART's Canvas Mode overrides surface title and cursor
const Tag = Mode.Surface.tagName;
return (
<Tag
ref={(ref) => (this._tagRef = ref)}
accessKey={props.accessKey}
className={props.className}
draggable={props.draggable}
role={props.role}
style={props.style}
tabIndex={props.tabIndex}
title={props.title}
/>
);
}
}
class Text extends React.Component {
constructor(props) {
super(props);
// We allow reading these props. Ideally we could expose the Text node as
// ref directly.
["height", "width", "x", "y"].forEach((key) => {
Object.defineProperty(this, key, {
get: function () {
return this._text ? this._text[key] : undefined;
},
});
});
}
render() {
// This means you can't have children that render into strings...
const T = TYPES.TEXT;
return (
<T {...this.props} ref={(t) => (this._text = t)}>
{childrenAsString(this.props.children)}
</T>
);
}
}
injectIntoDevTools({
findFiberByHostInstance: () => null,
bundleType: __DEV__ ? 1 : 0,
version: ReactVersion,
rendererPackageName: "react-art",
});
/** API */
export const ClippingRectangle = TYPES.CLIPPING_RECTANGLE;
export const Group = TYPES.GROUP;
export const Shape = TYPES.SHAPE;
export const Path = Mode.Path;
export { LinearGradient, Pattern, RadialGradient, Surface, Text, Transform };