Ejemplo n.º 1
0
 exec('config user.name', function (err, stdout, stderr) {
   if (err) {
     addToList('Error: ' + err.message, false)
     return helper.challengeIncomplete()
   }
   var name = stdout.trim()
   if (name === '') {
     addToList('No name found.', false)
     helper.challengeIncomplete()
   } else {
     counter++
     addToList('Name Added!', true)
     exec('--version', function (err, stdout, stdrr) {
       if (err) {
         addToList('Error: ' + err.message, false)
         return helper.challengeIncomplete()
       }
       var gitOutput = stdout.trim()
       if (gitOutput.match('git version')) {
         counter++
         addToList('Found Git installed!', true)
       } else {
         addToList('Did not find Git installed.', false)
         helper.challengeIncomplete()
       }
       if (counter === total) {
         markChallengeCompleted(currentChallenge)
         userData.updateData(currentChallenge)
       }
     })
   }
 })
Ejemplo n.º 2
0
  exec('reflog show origin/master', {cwd: path}, function (err, stdout, stderr) {
    if (err) {
      addToList('Error: ' + err.message, false)
      return helper.challengeIncomplete()
    }
    var ref = stdout.trim()

    if (ref.match('update by push')) {
      addToList('You pushed changes!', true)
      markChallengeCompleted(currentChallenge)
      userData.updateData(currentChallenge)
    } else {
      addToList('No evidence of push.', false)
      helper.challengeIncomplete()
    }
  })
Ejemplo n.º 3
0
    exec('config user.username', function (err, stdout, stdrr) {
      if (err) {
        addToList('Could not find username.', false)
        return helper.challengeIncomplete()
      }
      var user = stdout.trim()

      exec('branch', {cwd: path}, function (err, stdout, stdrr) {
        if (err) {
          addToList('Error: ' + err.message, false)
          return helper.challengeIncomplete()
        }

        var branches = stdout.trim()
        var branchName = 'add-' + user

        if (branches.match(branchName)) {
          addToList('Uh oh, branch is still there.', false)
        } else {
          counter++
          addToList('Branch deleted!', true)
          if (counter === total) {
            markChallengeCompleted(currentChallenge)
            userData.updateData(currentChallenge)
          } else helper.challengeIncomplete()
        }
      })
    })
Ejemplo n.º 4
0
  exec('status', {cwd: path}, function (err, stdout, stdrr) {
    if (err) {
      addToList('Error: ' + err.message, false)
      return helper.challengeIncomplete()
    }
    var show = stdout.trim()

    if (show.match('Initial commit')) {
      addToList("Can't find committed changes.", false)
    } else if (show.match('nothing to commit')) {
      addToList('Changes have been committed!', true)
      markChallengeCompleted(currentChallenge)
      userData.updateData(currentChallenge)
    } else {
      addToList('Seems there are changes to commit still.', false)
      helper.challengeIncomplete()
    }
  })
Ejemplo n.º 5
0
module.exports = function verifyMergeTadaChallenge (path) {
  counter = 0
  if (!fs.lstatSync(path).isDirectory()) {
    addToList('Path is not a directory.', false)
    return helper.challengeIncomplete()
  }

  exec('reflog -10', {cwd: path}, function (err, stdout, stdrr) {
    if (err) {
      addToList('Error: ' + err.message, false)
      return helper.challengeIncomplete()
    }
    var ref = stdout.trim()

    if (ref.match('merge')) {
      counter++
      addToList('Branch has been merged!', true)
    } else addToList('No merge in the history.', false)

    exec('config user.username', function (err, stdout, stdrr) {
      if (err) {
        addToList('Could not find username.', false)
        return helper.challengeIncomplete()
      }
      var user = stdout.trim()

      exec('branch', {cwd: path}, function (err, stdout, stdrr) {
        if (err) {
          addToList('Error: ' + err.message, false)
          return helper.challengeIncomplete()
        }

        var branches = stdout.trim()
        var branchName = 'add-' + user

        if (branches.match(branchName)) {
          addToList('Uh oh, branch is still there.', false)
        } else {
          counter++
          addToList('Branch deleted!', true)
          if (counter === total) {
            markChallengeCompleted(currentChallenge)
            userData.updateData(currentChallenge)
          } else helper.challengeIncomplete()
        }
      })
    })
  })
}
Ejemplo n.º 6
0
module.exports = function verifyRemoteControlChallenge (path) {
  if (!fs.lstatSync(path).isDirectory()) {
    addToList('Path is not a directory.', false)
    return helper.challengeIncomplete()
  }
  exec('reflog show origin/master', {cwd: path}, function (err, stdout, stderr) {
    if (err) {
      addToList('Error: ' + err.message, false)
      return helper.challengeIncomplete()
    }
    var ref = stdout.trim()

    if (ref.match('update by push')) {
      addToList('You pushed changes!', true)
      markChallengeCompleted(currentChallenge)
      userData.updateData(currentChallenge)
    } else {
      addToList('No evidence of push.', false)
      helper.challengeIncomplete()
    }
  })
}