Comments (10)
Hi,
I'm just doing this:
Param([Hashtable]$parameters)
New-BcContainer @parameters
$script = {
$dirOrigen = #Place here the path to \.netpackages
$dirDestino = "C:\Program Files (x86)\Microsoft Dynamics NAV\190\RoleTailored Client"
$dirServicio = "C:\Program Files\Microsoft Dynamics NAV\190\Service\Add-Ins"
Get-ChildItem -Path $dirOrigen | Copy-Item -Destination $dirDestino
Get-ChildItem -Path $dirOrigen | Copy-Item -Destination $dirServicio
}
Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock $script
Hope this help
from al-go.
AL-Go for GitHub might not be the best fit.
Especially, if you are planning to stay on BC 19 - and use dotnet framework DLLs etc.
You can probably make things work using script overrides etc., but you will be using AL-Go for something that it isn't really intended for.
from al-go.
Ok, thank you anyway
from al-go.
If the goal is just to allow dotnet variables, you can probably just set "EnablePerTenantExtensionCop": false in the repo settings file and then the cop is disabled.
Onprem can however pull many other things along.
from al-go.
Hi,
We already have done so, but we need to use our own dll’s, “move” them to the assembly-probing path in the container. We understand that al-go is not intended for that but, once you taste it, is hard to get rid of its advantages :). Is a big client and it will help a lot if we can run the “CI/CD” workflow incrementing version numbers, checking that we don’t break anything, … and the “Create release” one in order to have it well organized.
from al-go.
Thinking about it (and if other people find this), you could create a file called NewBcContainer.ps1
in your .AL-Go folder.
This will override the container creation and in that script, you can copy your DLLs into the container.
The NewBcContainer function looks like this (without the comments):
Param([Hashtable]$parameters)
# here you could add other parameters to New-BcContainer
New-BcContainer @parameters
# here you could copy files into the container
Invoke-ScriptInBcContainer $parameters.ContainerName -scriptblock { $progressPreference = 'SilentlyContinue' }
Note though, that as we change AL-Go in the future, overrides like these are sometimes broken and you might have to change things.
from al-go.
Thank you we'll try it
from al-go.
We have already tried it and it works fine,
Thanks.
from al-go.
Hi @amunoz-ldr ,
would you mind to share your solution?
I've tried similar with the solution provided by Freddy, but I can't seem to get it working.
I created in the".Al-Go" directory an file called "NewBcContainer.ps1", at first I wasn't sure if it gets executed so I tried some less useful commands to get an "reaction" in the shape of an error. For example:
Param([Hashtable]$parameters)
# here you could add other parameters to New-BcContainer
New-BcContainer @parameters
Remove-BcContainer -containerName $parameters['containerName']
It seems that there is some error handling to prevent something like this? @freddydk .
The following script is the one that is the result after some hours of trial and error
Param([Hashtable]$parameters)
# here you could add other parameters to New-BcContainer
New-BcContainer @parameters
# here you could copy files into the container
$DependencyFolder = ${github.workspace} + "/.netpackages"
Get-ChildItem $DependencyFolder -Filter *.dll |
Foreach-Object {
Copy-Item -Path $_.FullName -Destination "C:\Windows\Microsoft.NET\Assembly\"
}
Currently, copying the dlls to the service tier is no concern due to setting in the AL-Go-Settings.json "doNotPublishApps": true
from al-go.
Thanks for providing your solution!
Unfortunately I still get an error when compiling the app, I think the DLLs are not yet recognized when compiling in Visual Studio Code. @freddydk , do you have any input for me on how this can be done?
from al-go.
Related Issues (20)
- Installing dependencies based on the appDependencyProbingPaths setting fail HOT 14
- Dependency App is not being installed into container HOT 3
- Repositories use the earliest version of the the dependency instead of the latest version HOT 9
- Unusually long runtime for Deploy step with self-hosted runner HOT 5
- Publish to AppSource - Automated validation: failure HOT 2
- Change version HOT 2
- Timeouts when downloading Artifacts? HOT 6
- AppSource App deployment failes with PerTenantExtensionCop Error PTE0001 and PTE0002 HOT 6
- Unstable workflow "Test Current" HOT 4
- CICD workflow is deploying a different app version number from the build artifact HOT 1
- keyVaultCodesignCertificateName - error HOT 3
- SyncMode for custom deployments? HOT 4
- Automatic updates for AL-Go are failing HOT 9
- Deployment to the sandbox environment failed with the error message: "underlying connection was closed." HOT 3
- Publish to AppSource fails with error code AVS0106 HOT 2
- Deliver to Storage Failing with Error Message "unable to locate apps" HOT 1
- Sync-NAVApp : Table 344 Setup Checklist Line :: The table 'Setup Checklist Line' cannot be located. Removing tables is not allowed unless they are temporary or are being moved by migration to another app. HOT 4
- BCContainerHelper settings skipped HOT 2
- RELEASENOTES.copy.md not updated when running Update AL-Go System Files? HOT 1
- Publish to AppSource does not include library app HOT 12
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from al-go.