diff --git a/lib/config/decrypt.js b/lib/config/decrypt.js
index 846eab78ad9d5ba86097d0c861760898ed088b86..d491fdecc3d8cc0fe861f36b93e90ecd6f045dbe 100644
--- a/lib/config/decrypt.js
+++ b/lib/config/decrypt.js
@@ -7,30 +7,26 @@ module.exports = {
 function decryptConfig(config, privateKey) {
   logger.trace({ config }, 'decryptConfig');
   const decryptedConfig = { ...config };
-  for (const key of Object.keys(config)) {
-    const val = config[key];
+  for (const [key, val] of Object.entries(config)) {
     if (key === 'encrypted' && isObject(val)) {
       logger.debug({ config: val }, 'Found encrypted config');
       if (privateKey) {
-        for (const encryptedKey of Object.keys(val)) {
+        for (const [eKey, eVal] of Object.entries(val)) {
           try {
             const decryptedStr = crypto
-              .privateDecrypt(
-                privateKey,
-                Buffer.from(val[encryptedKey], 'base64')
-              )
+              .privateDecrypt(privateKey, Buffer.from(eVal, 'base64'))
               .toString();
-            logger.info(`Decrypted ${encryptedKey}`);
-            if (encryptedKey === 'npmToken') {
+            logger.info(`Decrypted ${eKey}`);
+            if (eKey === 'npmToken') {
               logger.info('Migrating npmToken to npmrc');
               decryptedConfig.npmrc = `//registry.npmjs.org/:_authToken=${
                 decryptedStr
               }\n`;
             } else {
-              decryptedConfig[encryptedKey] = decryptedStr;
+              decryptedConfig[eKey] = decryptedStr;
             }
           } catch (err) {
-            logger.warn({ err }, `Error decrypting ${encryptedKey}`);
+            logger.warn({ err }, `Error decrypting ${eKey}`);
           }
         }
       } else {
diff --git a/lib/config/massage.js b/lib/config/massage.js
index 4ce2b20a8ba447553004985c919bbcb80f9566d2..ab17e80aa85b4efec936f57d14c41ee4fcc742da 100644
--- a/lib/config/massage.js
+++ b/lib/config/massage.js
@@ -18,8 +18,7 @@ function massageConfig(config) {
     });
   }
   const massagedConfig = deepcopy(config);
-  for (const key of Object.keys(config)) {
-    const val = config[key];
+  for (const [key, val] of Object.entries(config)) {
     if (allowedStrings.includes(key) && typeof val === 'string') {
       massagedConfig[key] = [val];
     } else if (key === 'npmToken' && val && val.length < 30) {
diff --git a/lib/config/migration.js b/lib/config/migration.js
index afe19143d113494498015c9abfded990a33e50e4..55dd527ab553667262453d983cb98d2361b7f0d9 100644
--- a/lib/config/migration.js
+++ b/lib/config/migration.js
@@ -32,8 +32,7 @@ function migrateConfig(config) {
   }
   let isMigrated = false;
   const migratedConfig = deepcopy(config);
-  for (const key of Object.keys(config)) {
-    const val = config[key];
+  for (const [key, val] of Object.entries(config)) {
     if (removedOptions.includes(key)) {
       isMigrated = true;
       delete migratedConfig[key];
diff --git a/lib/config/presets.js b/lib/config/presets.js
index 6cbe24d7f06bb6aa052058bc999dc12e68190a67..6b19fca0d9e20db22da027df55d5cd025c725cd3 100644
--- a/lib/config/presets.js
+++ b/lib/config/presets.js
@@ -40,8 +40,7 @@ async function resolveConfigPresets(inputConfig, existingPresets = []) {
   config = configParser.mergeChildConfig(config, inputConfig);
   delete config.extends;
   logger.trace({ config }, `Post-merge resolve config`);
-  for (const key of Object.keys(config)) {
-    const val = config[key];
+  for (const [key, val] of Object.entries(config)) {
     const ignoredKeys = ['content'];
     if (isObject(val) && ignoredKeys.indexOf(key) === -1) {
       // Resolve nested objects
@@ -69,16 +68,16 @@ async function resolveConfigPresets(inputConfig, existingPresets = []) {
 function replaceArgs(obj, argMapping) {
   if (typeof obj === 'string') {
     let returnStr = obj;
-    for (const arg of Object.keys(argMapping)) {
+    for (const [arg, argVal] of Object.entries(argMapping)) {
       const re = new RegExp(`{{${arg}}}`, 'g');
-      returnStr = returnStr.replace(re, argMapping[arg]);
+      returnStr = returnStr.replace(re, argVal);
     }
     return returnStr;
   }
   if (isObject(obj)) {
     const returnObj = {};
-    for (const key of Object.keys(obj)) {
-      returnObj[key] = replaceArgs(obj[key], argMapping);
+    for (const [key, val] of Object.entries(obj)) {
+      returnObj[key] = replaceArgs(val, argMapping);
     }
     return returnObj;
   }
diff --git a/lib/config/validation.js b/lib/config/validation.js
index 029af8d233ed106063b4a33f7ee9219078b92b80..501f1b80274b9a9a8dd72d98f5d13b78b487fe7f 100644
--- a/lib/config/validation.js
+++ b/lib/config/validation.js
@@ -35,8 +35,7 @@ function validateConfig(config) {
     return typeof val === 'string' || val instanceof String;
   }
 
-  for (const key of Object.keys(config)) {
-    const val = config[key];
+  for (const [key, val] of Object.entries(config)) {
     if (
       !isIgnored(key) && // We need to ignore some reserved keys
       !isAFunction(val) // Ignore all functions