with Odoo and Clearly Defined?
Request the creation of a resource. See the documentation
Gets the coordinates for all definitions that match the given pattern in the specified part of the definition. See the documentation
import xmlrpc from 'xmlrpc';
export default defineComponent({
props: {
odoo: {
type: "app",
app: "odoo",
}
},
async run({ steps, $ }) {
const url = this.odoo.$auth.server_url;
const db = this.odoo.$auth.db;
const username = this.odoo.$auth.username;
const password = this.odoo.$auth.password;
// Create clients for common and object endpoints
const common = xmlrpc.createSecureClient(`${url}/xmlrpc/2/common`);
const models = xmlrpc.createSecureClient(`${url}/xmlrpc/2/object`);
// Using async/await with promises
async function getFields() {
try {
// Authenticate and get uid
const uid = await new Promise((resolve, reject) => {
common.methodCall('authenticate', [db, username, password, {}], (error, value) => {
if (error) reject(error);
resolve(value);
});
});
// Get fields
const results = await new Promise((resolve, reject) => {
models.methodCall('execute_kw', [
db,
uid,
password,
'res.partner',
'fields_get',
[],
{ 'attributes': ['string', 'help', 'type'] }
], (error, value) => {
if (error) reject(error);
resolve(value);
});
});
return results;
} catch (error) {
throw new Error(error);
}
}
return await getFields();
},
})
The Clearly Defined API offers a way to interact with the Clearly Defined service, which curates and shares data about the clarity of licenses and security of open source components. You can retrieve detailed information about software components' licenses, scores for clarity, and metadata. On Pipedream, you can harness this API to automate checking the compliance and security of software dependencies, notify pertinent stakeholders about the status of components, and integrate with other tools for a seamless open source governance process.
import { axios } from "@pipedream/platform"
export default defineComponent({
props: {
clearly_defined: {
type: "app",
app: "clearly_defined",
}
},
async run({steps, $}) {
return await axios($, {
url: `https://${this.clearly_defined.$auth.environment}.clearlydefined.io/definitions`,
})
},
})