How to test ChromeOS enterprise features during development? - google-chrome-extension

I am working on a Chrome extension running on Chrome OS.
The extension needs the enterprise.hardwarePlatform permission to be able to get hardware information about the device.
The question is: How can I test my extension?
After installing the extension manually, the API to get the hardware information will not work as it needs the extension to be forced-installed by the enterprise policy.
But how to force-install the extension if it is not published in the Chrome Web Store?
Google Workspace seems to allow to refer only to published extensions in the enterprise policy. But obviously I do not want to publish the extension under development. Also I didn't find a "Web Store for development" where I could upload the extension and then refer to it from the policy.
So how to do this?
I found this question:
https://support.google.com/chrome/a/thread/107510644/how-do-i-develop-a-chrome-extension-with-enterprise-permissions?hl=en-gb
However, did not find the answer in any of the provided links. All information seem to point to publishing on Chrome Web Store first. But then would it be impossible to manually test a feature like this before publishing?
Thank you for your answers in advance.

Related

Publish a new version of a Chrome Extension to just testers (initially)

I have an unlisted extension published through the Chrome web store which is already being used. I have a new version which I would like to release just to testers initially, before a full roll out to everyone. Can this be done?
The same thing has been asked here but it was almost 9 years ago, and the answers disagree on whether it's possible or not:
How to publish new version of Chrome Extension only to testers
The short answer is "No, it can't be done for a published extension".
According to Chrome Web Store visibility descriptions, you must unpublish an extension before it can be published to trusted testers. Users who already have it installed will get updated to the new version.
In your case, you have to create a new extension with the new code, and a different name like "MyApp Beta" and publish it privately to the list of trusted testers.
Maybe you already know this, but you can install a chrome extension manually.
Go to chrome://extensions/ and check the box for Developer mode in the top right.
Click "Load unpacked exention"
Select the folder where your unzipped extension resides in.
So, you can send a zip/rar to your testers, let them follow the procedure and test the extension. Might be that you have to give it another name so as to not conflict with your earlier eversion, or you could ask your testers to delete the existing extension to avoid conflicts.
Well, the simplest way is to pack a .crx file of the tester-only extension then link to it via some cloud-hosting service like Google Drive. There is no way to do this through the Web Store. You could release a different extension as a beta channel though.
Not strictly related to publishing a full extension, but ... you could use feature toggling to control the visibility of new functionality? So wrap the new functionality in toggle checks and only turn the feature on based on some criteria you can decide in a custom roll-out strategy. See enter link description here for an open-source implementation of a feature toggle control system.
If you have a developer account and want to publish it on the chrome web store privately to just testers this is what you have to do:
Go to the Pricing and Distribution page of the extension during the publishing process
Click "Private"
Go to your developer account settings, and in the "Management" section, you can add trusted tester accounts.
You can change the status to public whenever your extension is ready.

Is it possible to autoupdate a chrome extension published outside the market?

I have a chrome extension that i built for my company employees,
we have our own instance of google apps #ourcompany.com
I have a gae app that tells the extension that it needs to be updated but the actual update process has to be done manually.
is there a way where i can do this update automatically once it's available?
You should publish your app to Chrome Web Store, and enjoy the auto-update process it offers, unless it's impossible due to CWS policies or packaging complications like Native Hosts/NPAPI.
When you do, you have an option to restrict installs to users of your Google Apps domain.
There are legitimate cases when you don't want to migrate over to CWS.
If you have a way to force install of your extension (ideally via Group Policy) and not concerned by tightening of security for Windows, you can just use update_url field in the manifest.

automate chrome extension installation when user access my website

i need my chrome extension to be downloaded and installed automatically, when user access my website from Google chrome.
my extension is stored in my web-server, should i need to store the extension in google web store for the above purpose.
is it possible to provide a shortcut to my extension in desktop also.
i am able to manually install the extension, but need to installed automatically using java-script or any other method
i have found some similar post using registry editing etc, but this will not meet my requirement.
Security restrictions prevent an extension from being installed from a web site other than the Chrome Web Store. You cannot bypass this restriction without control of the end-user machine.
The Web Store does not provide any mechanism for automatic extension installation. (This is a very good thing.)
On a standard Chrome installation, the only way to install an extension outside of the Web Store is by dragging a crx file onto the Extensions preferences page (chrome://extensions).
If you have administrative control of the target computers that the extension is to be instaled on, you can write a script that installs the extension.

Use Autoupdating in Google Chrome Web Store

I'm making an extension for Google Chrome and I use code for autoupdating. This is because the extension isn't yet in Google Chrome webstore. But in a few days I will upload it to the Webstore and Google says you can use the Webstores autoupdating. But if I don't want to use that, will my app still update by my own server, like the way it does now?
Thanks in advance!!
I agree that docs are not very clear about this:
If you publish your extension using the Chrome Developer Dashboard,
you can ignore this page. You can use the dashboard to release updated
versions of your extension to users, as well as to the Chrome Web
Store.
But, I've tested it myself and your update_url setting in manifest.json will be overridden when you publish your extension via Chrome Web Store (CWS). In other words, publishing to CWS means that you can't use self hosted autoupdating anymore.
The reasons for that, that I could think of, may be as follows:
CWS wants to keep track of each extension stats (i.e. number of users using each extension)
privacy concerns (people don't want you to track them when they update extension)
security concerns (each extension update must go through CWS verification process)
If you want to track people (please don't) use Google Analytics on i.e. background page of your extension.

App for Google Chrome

I have created an App for google chrome which just opens a web page. I am new in the topic
of Apps. I was thinking if it is possible to execute some linux command by using an App
in google chrome. For instance, an App which can open a terminal or open a program
installed in my machine like Gimp, Kate, Libre Office ...
From the instructions in the web page of google I saw that the only actions for an App
are limited to open a web address but I dont know if it is possible to extend the capabilities
of the Apps,
Regards.
Aren't apps sandboxed into the Google Chrome Process to ensure they can't affect other processes and for other security reasons. If so, you won't be able to execute programs/commands or view the User's Files unless you use some workaround such as Google's Native Client.
Google has locked down capabilities to stop malicious Web Apps from executing code and bringing malware and exploits.
You can write a NPAPI Plugin or a custom URI scheme associated to Unix terminal.

Resources