Merge pull request #631 from MycroftAI/feature/issue-630

#630 - Fixing SkillInstaller, using text to match instead of exit code
pull/637/head release/v0.8.8
Augusto Monteiro 2017-04-03 15:21:46 -07:00 committed by GitHub
commit 02cccc1c8a
3 changed files with 21 additions and 7 deletions

View File

@ -15,3 +15,5 @@ install:
script:
- pep8 mycroft test
# - ./start.sh unittest --fail-on-error
env:
- IS_TRAVIS=true

View File

@ -50,16 +50,15 @@ class SkillInstallerSkill(MycroftSkill):
[BIN, "install", skill.strip().replace(" ", "-")],
stdout=subprocess.PIPE,
stderr=subprocess.PIPE)
text = p.stdout.read()
status = p.wait()
if status == 0:
self.speak_dialog("installed", data={'skill': skill})
elif status == 2:
text, err = p.communicate()
if text.splitlines()[1] == "Your search has multiple choices":
stdout = text.splitlines()
del stdout[0:3]
self.speak_dialog("choose", data={'skills': ", ".join(stdout)})
elif status == 3:
elif text.splitlines()[1] == "Skill not found" or skill == "":
self.speak_dialog("not.found", data={'skill': skill})
elif text.splitlines()[2] == "Skill installed!":
self.speak_dialog("installed", data={'skill': skill})
def stop(self):
pass

View File

@ -1,6 +1,19 @@
#!/usr/bin/env bash
SKILLS_DIR='/opt/mycroft/skills'
# exit on any error
set -Ee
rm -rf msm
git clone https://github.com/MycroftAI/msm.git msm
chmod +x msm/msm
if [[ ${IS_TRAVIS} != true ]]; then
echo "Create /opt/mycroft/skills if it doesn't exist"
if [ ! -d ${SKILLS_DIR} ]; then
sudo chown $USER:$USER ${SKILLS_DIR}
fi
if [ ! -w ${SKILLS_DIR} ]; then
sudo mkdir -p ${SKILLS_DIR}
fi
fi