UNPKG

@gravityforms/gulp-tasks

Version:
73 lines (62 loc) 2.47 kB
#!/usr/bin/env node const axios = require( 'axios' ); const FormData = require( 'form-data' ); const { loadEnv } = require( '../utils/tools' ); const getPluginVersion = require( '../utils/get-plugin-version' ); const sendSlackMessage = require( '../utils/send-slack-message' ); const getConfig = require('../../config'); const { config } = getConfig(); const { trailingSlashIt } = require( './util' ); loadEnv( config.paths.root ); const rootPath = config?.paths?.root || ''; const fileName = config?.settings?.rootPluginFile || ''; const updateManagerVersion = async () => { // Check if not in production mode and exit early if ( process.env.GULP_PRODUCTION_MODE !== 'true' ) { console.log( 'Skipping updating manager version because GULP_PRODUCTION_MODE is not set to true.' ); return; } const slug = config?.settings?.slug || 'gravityforms'; const version = process.env.GRAVITY_PLUGIN_VERSION || getPluginVersion( rootPath, fileName ); const apiKey = process.env.MANAGER_API_KEY || ''; const managerUrl = process.env.MANAGER_URL || ''; if ( ! apiKey || ! managerUrl ) { console.error( 'API key or manager URL not found, cannot update manager version.' ); return; } let pathValue = ''; if ( /gravityforms|gravityflow/.test( slug ) ) { pathValue = slug === 'gravityforms' ? `gravityforms/releases/gravityforms_${ version }.zip` : `gravityforms/addons/${ slug.replace( 'gravityforms', '' ) }/${ slug }_${ version }.zip`; } else { pathValue = `${ slug }/releases/${ slug }_${ version }.zip` } console.log( `Updating Gravity manager version with path value: ${ pathValue }.` ); try { const response = await axios.patch( `${ trailingSlashIt( managerUrl ) }wp-json/gravityapi/v1/addons/update_latest_version`, {}, { params: { api_key: apiKey, slug: slug, latest_version: version, path: pathValue, // Add change_log if you have that data available // change_log: 'Your change log here' }, headers: { 'Content-Type': 'application/json' } } ); console.log( 'Success, updated Gravity manger version: ', response.data ); } catch ( error ) { console.error( 'Error, could not update Gravity manager version: ', error.response ? error.response.data : error.message ); await sendSlackMessage( `Failed to update manager version during build: ${ error.response ? error.response.data : error.message }`, 'error' ); process.exit( 1 ); } }; updateManagerVersion();