DEPRECATED
Since Opera has added CAPTCHA on their login page
Introduction
webext-buildtools builder for deploying extension to Opera add-ons based on upload-opera-extension.
If you need a complete solution for Web Extension build/deploy, go to webext-buildtools-integrated-builder repo. But this builder isn't included to integrated builder due to it's experimental status.
To read what are webext-buildtools and builders go to webext-buildtools-builder-types repo.
Warning
This package is experimental and not tested. It Uses upload-opera-extension package which has puppeteer in it's dependencies and requires downloading Chromium (about 150 Mb)
Installation
npm install webext-buildtools-opera-addons-builder
Purpose
Builder doesn't allow publish new extension, only update existing (specified by extensionId
in options)
with new version.
Usage example
const OperaAddonsUploadBuilder = require('webext-buildtools-opera-addons-builder').default;
const options = {
extensionId: '...',
email: '...',
password: '...'
};
const logMethod = console.log;
const builder = new ChromeWebstoreBuilder(options, logMethod);
builder.setInputZipFilePath('./packed.zip');
builder.requireUploadedExt();
const buildResult = await builder.build();
Options
Options object described in declarations/options.d.ts
See how to get logMethod
for pretty output.
Inputs
-
setInputZipFilePath(...)
. Path to zip file with packed extension dir.
You can use webext-buildtools-dir-reader-mw to generate needed inputs from extension directory.
Outputs
Uploaded ext
Require to upload extension to Opera add-ons
Required options: extensionId
, email
, password
Require methods: requireUploadedExt()
Assets:
const extensionId = buildResult.getAssets().uploadedExt.getValue()