Comments (15)
Not stale.
from artifacts-credprovider.
@jeffreyrivor, is there an actual plan here? I'm setting up a new machine now and cannot use your official install script https://aka.ms/install-artifacts-credprovider.ps1
, because of the rate limit problems mentioned in multiple other won't fix issues (#244, #369, #380).
Supporting winget would be perfect here.
from artifacts-credprovider.
I had mentioned something similar in #370 but they won't accept feature requests here.
If you would like to upvote/comment on the following it might help get some attention:
https://developercommunity.visualstudio.com/t/Add-installer-options-for-Azure-Artifact/10308779
from artifacts-credprovider.
We're no longer forwarding to the developer community, so having issues here is appropriate.
from artifacts-credprovider.
@JohnSchmeichel , great another overnight change :), so the two issues that were closed #370 and #379 can be added to this request. I'll reiterate my comments here.
An installer or winget package would help deployment at a larger scale though services like InTune or other software management tools.
This might be an MSI, Exe or winget based deployment options.At the moment the only installation options are a Zip of un-trusted PS scripts.
from artifacts-credprovider.
This issue has had no activity in 90 days. Please comment if it is not actually stale.
from artifacts-credprovider.
This issue has had no activity in 90 days. Please comment if it is not actually stale.
from artifacts-credprovider.
🙄
from artifacts-credprovider.
It seems like this should be possible now in winget now that Windows Package Manager manifests allow portable zip, although I can't tell at first glance if the zip must contain an installer or if the contents can just be extracted into a directory directly as the "installation."
from artifacts-credprovider.
I just linked a PR in winget-pkgs to this issue that takes a crack at integrating into winget, but the standalone zip with lack of an installer (WiX/Nullsoft/etc.) seems to make it unable to be fully automatic with winget; the install location can't be preset to the NuGet plugin directory, or if this can be set in the manifest I couldn't tell what YAML property would do it.
And I guess requiring the --location
argument to be specified manually on install is preventing the PR build validation from succeeding, but the failure in the PR build is opaque so I'm not sure.
Update: the issue appears to be due to the default symlinking winget does to add the CredentialManager.Microsoft.exe to the PATH and the test case of launch the console app via the PATH symlink fails due to inability to find dependent DLLs (the DLL loading algorithm doesn't use the actual location of the exe as the DLL search path). That said, there seems to be no mechanism to just "extract the zip here and don't add it to PATH" in winget.
from artifacts-credprovider.
Unfortunately, winget doesn't support raw zip (e.g. no nested installer exe/msi/etc) in the structure that would be required to place the artifacts credprovider in the NuGet plugin location.
- As noted in the linked PR, the
--location
argument would need to be manually specified to the NuGet plugin directory%USERPROFILE%\.nuget\plugins
, there's no way in the winget YAML definition to default this value. - winget adds the executable extracted from the raw zip to PATH via a symlink.
- Additionally, winget PRs are tested against an integration that attempts to ensure that raw zips that just extract an executable (and not launch the extracted executable as an installer) that are added to PATH are executable on that PATH; this test fails because the credprovider needs to load DLL dependencies that fail to handle symlinking properly. This is blocking the PR in its current state.
In summary, unless winget changes to allow a different default location (in this case, the NuGet plugin directory) and to allow disabling symlinking and adding to PATH for raw zipped exe extraction (NuGet doesn't need to use PATH to locate it anyhow), the credprovier will have to be packaged into an actual installer (using WiX/Nullsoft/Inno/etc) in order to be ingested into winget.
from artifacts-credprovider.
Can we package it into an actual installer? If so, is there a preferred install system, for example one of those you mentioned (WiX/Nullsoft/Inno)? I guess the installer should just reproduce the behavior of the current install script closely.
from artifacts-credprovider.
Best solution would be to make MSI out of it and publish to winget? since all this script is doing is some installation?
from artifacts-credprovider.
The script has a bit of logic to handle .NET versions, but other than that, it just copies a DLL into a specific folder.
from artifacts-credprovider.
And if we're to make an MSI, we need to decide on an MSI creation tool, like WiX or NSIS mentioned above.
from artifacts-credprovider.
Related Issues (20)
- Broken when referencing a Nuget package in F# interactive HOT 15
- Nu
- Azure Artifacts Credential provider failing to start HOT 6
- NullReferenceException in v1.0.9 HOT 3
- Azure Devops: gzip: stdin: unexpected end of file HOT 3
- Problem starting the plugin - Broken Pipe HOT 1
- How to do enhanced debugging? HOT 1
- Issue authenticating to Azure Artifacts via Python behind firewall decryption HOT 1
- Use Windows authentication context from in WSL HOT 3
- System.Security.Cryptography.CryptographicException on remote connections HOT 9
- The last Create 1.1.0 release Build Failed. When v1.1.0 will be released? HOT 6
- The messages logged by the credential providers are not localized. HOT 3
- Inconsistent account selection modal behavior across operating systems HOT 3
- MsalInteractiveTokenProvider breaks if no console window handle available HOT 4
- Artifacts Conda Remove SDK Dependency HOT 1
- Credential provider is not working on new laptop HOT 4
- `JsonException` with Release `1.1.0` when using `VSS_NUGET_EXTERNAL_FEED_ENDPOINTS` HOT 4
- dotnet list <SOLUTION> package --vulnerable/--outdated/--deprecated fails with Azure Artifacts Credential Provider HOT 7
- Are the Requirements Correct? HOT 4
- The proxy tunnel request to proxy failed with status code '407'
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 artifacts-credprovider.