From ff6a49d7fc273bbac96184a049f9a0e3452ad185 Mon Sep 17 00:00:00 2001 From: Jason Montleon Date: Tue, 17 Apr 2018 12:51:47 -0400 Subject: [PATCH] update longDescription, add shell option, make passwd updatable --- Dockerfile | 78 ++++++++++++++++------------ apb.yml | 23 +++++++- roles/vnc-desktop-apb/tasks/main.yml | 2 + 3 files changed, 67 insertions(+), 36 deletions(-) diff --git a/Dockerfile b/Dockerfile index fe892f0..6fd5cff 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,40 +1,50 @@ FROM ansibleplaybookbundle/apb-base LABEL "com.redhat.apb.spec"=\ -"dmVyc2lvbjogMS4wCm5hbWU6IHZuYy1kZXNrdG9wLWFwYgpkZXNjcmlwdGlvbjogVGhpcyBpcyBh\ -IHNhbXBsZSBhcHBsaWNhdGlvbiBnZW5lcmF0ZWQgYnkgYXBiIGluaXQKYmluZGFibGU6IEZhbHNl\ -CmFzeW5jOiBvcHRpb25hbAptZXRhZGF0YToKICBkaXNwbGF5TmFtZTogIlZOQyBEZXNrdG9wIChB\ -UEIpIgogIGltYWdlVXJsOiAiaHR0cHM6Ly91cGxvYWQud2lraW1lZGlhLm9yZy93aWtpcGVkaWEv\ -Y29tbW9ucy90aHVtYi9hL2E5L1RpZ2VyVk5DX2xvZ28uc3ZnLzQ4cHgtVGlnZXJWTkNfbG9nby5z\ -dmcucG5nIgogIGxvbmdEZXNjcmlwdGlvbjogVGhpcyBBUEIgd2lsbCBydW4gYSBkZXNrdG9wIG9m\ -IHlvdXIgY2hvaWNlIG9uIHRoZSBkaXN0cmlidXRpb24gb2YgeW91ciBjaG9pY2UuIEluIGFkZGl0\ -aW9uIGEgbm9WTkMgc2VydmVyIHdpbGwgYmUgY29uZmlndXJlZCBzbyB5b3UgY2FuIGVhc2lseSBj\ -b25uZWN0LgogIGRlcGVuZGVuY2llczoKICAtIGRvY2tlci5pby9hbnNpYmxlcGxheWJvb2tidW5k\ -bGUvdm5jLWNsaWVudDpsYXRlc3QKICAtIGRvY2tlci5pby9hbnNpYmxlcGxheWJvb2tidW5kbGUv\ -dm5jLWRlc2t0b3A6ZjI4CiAgLSBkb2NrZXIuaW8vYW5zaWJsZXBsYXlib29rYnVuZGxlL3ZuYy1k\ -ZXNrdG9wOmYyNwpwbGFuczoKICAtIG5hbWU6IGYyOAogICAgZGVzY3JpcHRpb246IFJ1biBhIGRl\ -c2t0b3Agb2YgeW91ciBjaG9pY2Ugb24gRmVkb3JhIDI4CiAgICBmcmVlOiBUcnVlCiAgICBtZXRh\ -ZGF0YToge30KICAgIHVwZGF0ZXNfdG86CiAgICAtIGYyNwogICAgcGFyYW1ldGVyczoKICAgIC0g\ -bmFtZTogdm5jcGFzcwogICAgICB0aXRsZTogVk5DIFBhc3N3b3JkCiAgICAgIHR5cGU6IHN0cmlu\ -ZwogICAgICByZXF1aXJlZDogdHJ1ZQogICAgLSBuYW1lOiBkZQogICAgICB0aXRsZTogRGVza3Rv\ -cCBFbnZpcm9ubWVudAogICAgICB0eXBlOiBlbnVtCiAgICAgIGVudW06IFsnZnZ3bScsICdpMycs\ -ICdLREUnLCAnTFhERScsICdMWFF0JywgJ01BVEUnLCAnU3VnYXInLCAndHdtJywgJ1hmY2UnXQog\ -ICAgICBkZWZhdWx0OiAnWGZjZScKICAgICAgdXBkYXRhYmxlOiB0cnVlCiAgICAtIG5hbWU6IHJl\ -c29sdXRpb24KICAgICAgdGl0bGU6IERlc2t0b3AgUmVzb2x1dGlvbgogICAgICB0eXBlOiBlbnVt\ -CiAgICAgIGVudW06IFsnODAweDYwMCcsICcxMDI0eDc2OCcsICcxMjgweDEwMjQnLCAnMTM2MHg3\ -NjgnLCAnMTQ0MHg5MDAnLCAnMTkyMHgxMDgwJ10KICAgICAgZGVmYXVsdDogJzEzNjB4NzY4Jwog\ -ICAgICB1cGRhdGFibGU6IHRydWUKICAtIG5hbWU6IGYyNwogICAgZGVzY3JpcHRpb246IFJ1biBh\ -IERlc2t0b3Agb2YgeW91ciBjaG9pY2Ugb24gRmVkb3JhIDI3IAogICAgZnJlZTogVHJ1ZQogICAg\ -bWV0YWRhdGE6IHt9CiAgICB1cGRhdGVzX3RvOgogICAgLSBmMjgKICAgIHBhcmFtZXRlcnM6IAog\ -ICAgLSBuYW1lOiB2bmNwYXNzCiAgICAgIHRpdGxlOiBWTkMgUGFzc3dvcmQKICAgICAgdHlwZTog\ -c3RyaW5nCiAgICAgIHJlcXVpcmVkOiB0cnVlCiAgICAtIG5hbWU6IGRlCiAgICAgIHRpdGxlOiBE\ -ZXNrdG9wIEVudmlyb25tZW50CiAgICAgIHR5cGU6IGVudW0KICAgICAgZW51bTogWydmdndtJywg\ -J2kzJywgJ0tERScsICdMWERFJywgJ0xYUXQnLCAnTUFURScsICdTdWdhcicsICd0d20nLCAnWGZj\ -ZSddCiAgICAgIGRlZmF1bHQ6ICdYZmNlJwogICAgICB1cGRhdGFibGU6IHRydWUKICAgIC0gbmFt\ -ZTogcmVzb2x1dGlvbgogICAgICB0aXRsZTogRGVza3RvcCBSZXNvbHV0aW9uCiAgICAgIHR5cGU6\ -IGVudW0KICAgICAgZW51bTogWyc4MDB4NjAwJywgJzEwMjR4NzY4JywgJzEyODB4MTAyNCcsICcx\ -MzYweDc2OCcsICcxNDQweDkwMCcsICcxOTIweDEwODAnXQogICAgICBkZWZhdWx0OiAnMTM2MHg3\ -NjgnCiAgICAgIHVwZGF0YWJsZTogdHJ1ZQo=" +"dmVyc2lvbjogMS4wCm5hbWU6IHZuYy1kZXNrdG9wLWFwYgpkZXNjcmlwdGlvbjogQSBEZXNrdG9w\ +IGVudmlyb25tZW50IGFjY2Vzc2libGUgdmlhIG5vVk5DLgpiaW5kYWJsZTogRmFsc2UKYXN5bmM6\ +IG9wdGlvbmFsCm1ldGFkYXRhOgogIGRpc3BsYXlOYW1lOiAiVk5DIERlc2t0b3AgKEFQQikiCiAg\ +aW1hZ2VVcmw6ICJodHRwczovL3VwbG9hZC53aWtpbWVkaWEub3JnL3dpa2lwZWRpYS9jb21tb25z\ +L3RodW1iL2EvYTkvVGlnZXJWTkNfbG9nby5zdmcvNDhweC1UaWdlclZOQ19sb2dvLnN2Zy5wbmci\ +CiAgbG9uZ0Rlc2NyaXB0aW9uOiB8CiAgICAgICAgICAgICAgICAgICAtIFRoaXMgQVBCIHdpbGwg\ +cnVuIGEgZGVza3RvcCBvZiB5b3VyIGNob2ljZSBvbiB0aGUgZGlzdHJpYnV0aW9uIG9mIHlvdXIg\ +Y2hvaWNlLgogICAgICAgICAgICAgICAgICAgLSBJbiBhZGRpdGlvbiBhIG5vVk5DIHNlcnZlciB3\ +aWxsIGJlIGNvbmZpZ3VyZWQgc28geW91IGNhbiBlYXNpbHkgY29ubmVjdC4KICAgICAgICAgICAg\ +ICAgICAgIC0gL2hvbWUvdm5jIGlzIGJhY2tlZCBieSBwZXJzaXN0ZW50IHN0b3JhZ2UuCiAgICAg\ +ICAgICAgICAgICAgICAtIFRoZSBwbGFuIChkaXN0cmlidXRpb24pIGFuZCBtb3N0IHBhcmFtZXRl\ +cnMgYXJlIHVwZGF0YWJsZS4KICAgICAgICAgICAgICAgICAgIC0gVGhlIGRlZmF1bHQgTGludXgg\ +cGFzc3dvcmQgaXMgZmVkb3JhLgogIGRlcGVuZGVuY2llczoKICAtIGRvY2tlci5pby9hbnNpYmxl\ +cGxheWJvb2tidW5kbGUvdm5jLWNsaWVudDpsYXRlc3QKICAtIGRvY2tlci5pby9hbnNpYmxlcGxh\ +eWJvb2tidW5kbGUvdm5jLWRlc2t0b3A6ZjI4CiAgLSBkb2NrZXIuaW8vYW5zaWJsZXBsYXlib29r\ +YnVuZGxlL3ZuYy1kZXNrdG9wOmYyNwpwbGFuczoKICAtIG5hbWU6IGYyOAogICAgZGVzY3JpcHRp\ +b246IFJ1biBhIGRlc2t0b3Agb2YgeW91ciBjaG9pY2Ugb24gRmVkb3JhIDI4CiAgICBmcmVlOiBU\ +cnVlCiAgICBtZXRhZGF0YToge30KICAgIHVwZGF0ZXNfdG86CiAgICAtIGYyNwogICAgcGFyYW1l\ +dGVyczoKICAgIC0gbmFtZTogdm5jcGFzcwogICAgICB0aXRsZTogVk5DIFBhc3N3b3JkCiAgICAg\ +IHR5cGU6IHN0cmluZwogICAgICByZXF1aXJlZDogdHJ1ZQogICAgICB1cGRhdGFibGU6IHRydWUK\ +ICAgIC0gbmFtZTogZGUKICAgICAgdGl0bGU6IERlc2t0b3AgRW52aXJvbm1lbnQKICAgICAgdHlw\ +ZTogZW51bQogICAgICBlbnVtOiBbJ2Z2d20nLCAnaTMnLCAnS0RFJywgJ0xYREUnLCAnTFhRdCcs\ +ICdNQVRFJywgJ1N1Z2FyJywgJ3R3bScsICdYZmNlJ10KICAgICAgZGVmYXVsdDogJ1hmY2UnCiAg\ +ICAgIHVwZGF0YWJsZTogdHJ1ZQogICAgLSBuYW1lOiBkZXNoZWxsCiAgICAgIHRpdGxlOiBTaGVs\ +bAogICAgICB0eXBlOiBlbnVtCiAgICAgIGVudW06IFsnYmFzaCcsICdjc2gnLCAna3NoJywgJ3No\ +J10KICAgICAgZGVmYXVsdDogJ2Jhc2gnCiAgICAgIHVwZGF0YWJsZTogdHJ1ZQogICAgLSBuYW1l\ +OiByZXNvbHV0aW9uCiAgICAgIHRpdGxlOiBEZXNrdG9wIFJlc29sdXRpb24KICAgICAgdHlwZTog\ +ZW51bQogICAgICBlbnVtOiBbJzgwMHg2MDAnLCAnMTAyNHg3NjgnLCAnMTI4MHgxMDI0JywgJzEz\ +NjB4NzY4JywgJzE0NDB4OTAwJywgJzE5MjB4MTA4MCddCiAgICAgIGRlZmF1bHQ6ICcxMzYweDc2\ +OCcKICAgICAgdXBkYXRhYmxlOiB0cnVlCiAgLSBuYW1lOiBmMjcKICAgIGRlc2NyaXB0aW9uOiBS\ +dW4gYSBEZXNrdG9wIG9mIHlvdXIgY2hvaWNlIG9uIEZlZG9yYSAyNyAKICAgIGZyZWU6IFRydWUK\ +ICAgIG1ldGFkYXRhOiB7fQogICAgdXBkYXRlc190bzoKICAgIC0gZjI4CiAgICBwYXJhbWV0ZXJz\ +OiAKICAgIC0gbmFtZTogdm5jcGFzcwogICAgICB0aXRsZTogVk5DIFBhc3N3b3JkCiAgICAgIHR5\ +cGU6IHN0cmluZwogICAgICByZXF1aXJlZDogdHJ1ZQogICAgICB1cGRhdGFibGU6IHRydWUKICAg\ +IC0gbmFtZTogZGUKICAgICAgdGl0bGU6IERlc2t0b3AgRW52aXJvbm1lbnQKICAgICAgdHlwZTog\ +ZW51bQogICAgICBlbnVtOiBbJ2Z2d20nLCAnaTMnLCAnS0RFJywgJ0xYREUnLCAnTFhRdCcsICdN\ +QVRFJywgJ1N1Z2FyJywgJ3R3bScsICdYZmNlJ10KICAgICAgZGVmYXVsdDogJ1hmY2UnCiAgICAg\ +IHVwZGF0YWJsZTogdHJ1ZQogICAgLSBuYW1lOiBkZXNoZWxsCiAgICAgIHRpdGxlOiBTaGVsbAog\ +ICAgICB0eXBlOiBlbnVtCiAgICAgIGVudW06IFsnYmFzaCcsICdjc2gnLCAna3NoJywgJ3NoJ10K\ +ICAgICAgZGVmYXVsdDogJ2Jhc2gnCiAgICAgIHVwZGF0YWJsZTogdHJ1ZQogICAgLSBuYW1lOiBy\ +ZXNvbHV0aW9uCiAgICAgIHRpdGxlOiBEZXNrdG9wIFJlc29sdXRpb24KICAgICAgdHlwZTogZW51\ +bQogICAgICBlbnVtOiBbJzgwMHg2MDAnLCAnMTAyNHg3NjgnLCAnMTI4MHgxMDI0JywgJzEzNjB4\ +NzY4JywgJzE0NDB4OTAwJywgJzE5MjB4MTA4MCddCiAgICAgIGRlZmF1bHQ6ICcxMzYweDc2OCcK\ +ICAgICAgdXBkYXRhYmxlOiB0cnVlCg==" diff --git a/apb.yml b/apb.yml index 278f1af..d939ed3 100644 --- a/apb.yml +++ b/apb.yml @@ -1,12 +1,17 @@ version: 1.0 name: vnc-desktop-apb -description: This is a sample application generated by apb init +description: A Desktop environment accessible via noVNC. bindable: False async: optional metadata: displayName: "VNC Desktop (APB)" imageUrl: "https://upload.wikimedia.org/wikipedia/commons/thumb/a/a9/TigerVNC_logo.svg/48px-TigerVNC_logo.svg.png" - longDescription: This APB will run a desktop of your choice on the distribution of your choice. In addition a noVNC server will be configured so you can easily connect. + longDescription: | + - This APB will run a desktop of your choice on the distribution of your choice. + - In addition a noVNC server will be configured so you can easily connect. + - /home/vnc is backed by persistent storage. + - The plan (distribution) and most parameters are updatable. + - The default Linux password is fedora. dependencies: - docker.io/ansibleplaybookbundle/vnc-client:latest - docker.io/ansibleplaybookbundle/vnc-desktop:f28 @@ -23,12 +28,19 @@ plans: title: VNC Password type: string required: true + updatable: true - name: de title: Desktop Environment type: enum enum: ['fvwm', 'i3', 'KDE', 'LXDE', 'LXQt', 'MATE', 'Sugar', 'twm', 'Xfce'] default: 'Xfce' updatable: true + - name: deshell + title: Shell + type: enum + enum: ['bash', 'csh', 'ksh', 'sh'] + default: 'bash' + updatable: true - name: resolution title: Desktop Resolution type: enum @@ -46,12 +58,19 @@ plans: title: VNC Password type: string required: true + updatable: true - name: de title: Desktop Environment type: enum enum: ['fvwm', 'i3', 'KDE', 'LXDE', 'LXQt', 'MATE', 'Sugar', 'twm', 'Xfce'] default: 'Xfce' updatable: true + - name: deshell + title: Shell + type: enum + enum: ['bash', 'csh', 'ksh', 'sh'] + default: 'bash' + updatable: true - name: resolution title: Desktop Resolution type: enum diff --git a/roles/vnc-desktop-apb/tasks/main.yml b/roles/vnc-desktop-apb/tasks/main.yml index b56709c..28313eb 100644 --- a/roles/vnc-desktop-apb/tasks/main.yml +++ b/roles/vnc-desktop-apb/tasks/main.yml @@ -29,6 +29,8 @@ value: "{{ vncpass }}" - name: DE value: "{{ de }}" + - name: DESHELL + value: "{{ deshell }}" - name: RESOLUTION value: "{{ resolution }}" image: docker.io/ansibleplaybookbundle/vnc-desktop:{{ _apb_plan_id }}