Skip to content
Snippets Groups Projects
account.js 1.42 KiB
Newer Older
  • Learn to ignore specific revisions
  • const { log } = require('cozy-konnector-libs')
    const { isLocal } = require('./env')
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
    const Sentry = require('@sentry/node')
    
    
    function getAccountId() {
      log('info', `getAccountId`)
      try {
        return JSON.parse(process.env.COZY_FIELDS).account
      } catch (err) {
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
        const errorMessage = `You must provide 'account' in COZY_FIELDS: ${err.message}`
        Sentry.captureException(errorMessage)
        throw new Error(errorMessage)
    
      }
    }
    
    function getAccountRev() {
      log('info', `getAccountRev`)
    
      log('info', `getAccountRev: ${JSON.stringify(process.env.COZY_FIELDS)}`)
    
      try {
        return isLocal()
          ? 'fakeAccountRev'
          : JSON.parse(process.env.COZY_FIELDS).account_rev
      } catch (err) {
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
        const errorMessage = `You must provide 'account' in COZY_FIELDS: ${err.message}`
        Sentry.captureException(errorMessage)
        throw new Error(errorMessage)
    
      }
    }
    
    /**
     * Return account secrets.
     * For local testing, change value with values from your konnector-dev-config.json
    
     * @returns {Fields}
    
      log('info', `getAccountSecret`)
    
          ? JSON.parse(process.env.COZY_FIELDS)
    
          : JSON.parse(process.env.COZY_PARAMETERS).secret
      } catch (err) {
    
    Bastien DUMONT's avatar
    Bastien DUMONT committed
        const errorMessage = `You must provide 'account-types' in COZY_PARAMETERS: ${err.message}`
        Sentry.captureException(errorMessage)
        throw new Error(errorMessage)
    
      }
    }
    module.exports = { getAccountId, getAccountRev, getAccountSecret }