juju should create/use a "juju" user

Bug #1281377 reported by Andrew Wilkins
12
This bug affects 3 people
Affects Status Importance Assigned to Milestone
Canonical Juju
Triaged
Low
Unassigned
juju-core
Won't Fix
Medium
Unassigned

Bug Description

We currently use the default cloud image username, "ubuntu", for a bunch of things in Juju. We should create our own user, probably "juju", for when we support other distributions. It doesn't technically matter, it's just a bit awkward.

Revision history for this message
John A Meinel (jameinel) wrote : Re: [Bug 1281377] [NEW] juju should create/use a "juju" user

I'm pretty sure this is importance Low (not on our current plate).

John
=:->
On Feb 18, 2014 2:35 AM, "Andrew Wilkins" <email address hidden>
wrote:

> Public bug reported:
>
> We currently use the default cloud image username, "ubuntu", for a bunch
> of things in Juju. We should create our own user, probably "juju", for
> when we support other distributions. It doesn't technically matter, it's
> just a bit awkward.
>
> ** Affects: juju-core
> Importance: High
> Status: Triaged
>
> --
> You received this bug notification because you are subscribed to juju-
> core.
> https://bugs.launchpad.net/bugs/1281377
>
> Title:
> juju should create/use a "juju" user
>
> To manage notifications about this bug go to:
> https://bugs.launchpad.net/juju-core/+bug/1281377/+subscriptions
>

Changed in juju-core:
importance: High → Medium
Changed in juju:
status: New → Triaged
importance: Undecided → Wishlist
Changed in juju-core:
status: Triaged → Won't Fix
Revision history for this message
Erik Lönroth (sssler-scania) wrote :

This matters alot and I'll outline why.

1. The Linux Foundation "Filesystem Hierarchy Standard", chapter 3.8. /home : User home directories (optional)

"The setup will differ from host to
host. Therefore, no program should rely on this location."

Source: https://refspecs.linuxfoundation.org/FHS_2.3/fhs-2.3.pdf

2. When using networked home directories, such as NFS along with automounter, the /home/ubuntu directory will be mounted over and effectively locking the ubuntu user out from the system.
I run into this problem and have to make cloud-init move the ubuntu user home to /lhome/ubuntu to allow for NFS home directories.

3. When people want to use "juju" but fiercefully want to stay with their "centos" distro. Forcing them to add "ubuntu" to the system for stuff like "juju ssh 0" and the like just scares these people away from juju.

Revision history for this message
Erik Lönroth (sssler-scania) wrote :

This below is what I have to add to the model cloudinit-user data to get juju to run on centos.

1. Adding in repos for this needed by juju + centos (Because centos doesn't have late enough python3 by default)
2. Adding python3 + libs to even run basic juju stuff.
3. Manually configure proxy for yum (Because juju doesn't know how)
4. Modify ubuntu user in flight (To enable me to use NFS for homes)
5. Install and enable snap (because centos doesn't start and enable services after install which Ubuntu does)
6. Install and enable ssh (because centos doesn't start and enable services after install which Ubuntu does)
7. Manually configure snapd (since juju doesn't know how on centos even though there are model configs for it)

cloudinit-userdata: |
  yum_repos:
    epel-release:
      baseurl: http://download.fedoraproject.org/pub/epel/7/$basearch
      enabled: true
      failovermethod: priority
      gpgcheck: true
      gpgkey: http://download.fedoraproject.org/pub/epel/RPM-GPG-KEY-EPEL-7
      name: Extra Packages for Enterprise Linux 7 - Release
  preruncmd:
    - mkdir -p /lhome
    - usermod ubuntu -m -d /lhome/ubuntu
    - sed -i 's+\(^HOME\|^# HOME\)=/home$+HOME=/lhome+g' /etc/default/useradd
    - echo "proxy=http://my.proxy.com:8080" >> /etc/yum.conf
    - yum --setopt=ip_resolve=4 --setopt=proxy=http://my.proxy.com:8080 -y install epel-release redhat-lsb-core sudo openssh-server python36-virtualenv python36-PyYAML python3 snapd python3-pip
  postruncmd:
    - usermod -p '*' ubuntu
    - systemctl start sshd
    - systemctl enable sshd
    - systemctl start snapd
    - systemctl enable snapd
    - snap set system proxy.https="http://my.proxy.com:8080"
    - snap set system proxy.http="http://my.proxy.com:8080"

Revision history for this message
james beedy (jamesbeedy) wrote :

@sssler-scania, thank you for that. Possibly we should break those out into different focused bugs that are all in support of closing the compatibility gap between juju and other operating systems.

Concerning the ubuntu user, +1 from me for using a "juju" user instead of "ubuntu".

Revision history for this message
Canonical Juju QA Bot (juju-qa-bot) wrote :

This bug has not been updated in 2 years, so we're marking it Low importance. If you believe this is incorrect, please update the importance.

Changed in juju:
importance: Wishlist → Low
tags: added: expirebugs-bot
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.