Skip to content

Commit 72e9601

Browse files
committed
Merge branch 'master' into development
2 parents 9548fcf + 8b08115 commit 72e9601

File tree

10 files changed

+242
-16
lines changed

10 files changed

+242
-16
lines changed

.Dockerfile.swo

-12 KB
Binary file not shown.

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,4 @@
11
*.pyc
22
*.swp
3+
*.retry
4+
*.db

ansible.cfg

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
[defaults]
2+
inventory = ./hosts.production

bot.yml

Lines changed: 43 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,43 @@
1+
---
2+
3+
- name: medios_bot
4+
hosts: all
5+
become: yes
6+
7+
vars: # == name?
8+
stack: medios_bot
9+
10+
tasks:
11+
- name: ensure python is present
12+
apt: name=python state=present
13+
14+
- name: docker-py is deprecated
15+
pip:
16+
name: docker-py
17+
# state: absent
18+
# version: '>= 1.7.0'
19+
20+
- name: docker requirement for ansible docker
21+
pip:
22+
name: docker
23+
state: present
24+
25+
#(-compose) TODO
26+
27+
- name: pull imagen del bot
28+
docker_image:
29+
name: numericalatina/medios_bot
30+
force: yes # pull
31+
32+
- name: pull imagen mariadb
33+
docker_image:
34+
name: mariadb
35+
36+
- name: copiar docker-compose.yml
37+
template:
38+
dest: "~/medios_bot.yml"
39+
src: docker-compose.yml
40+
41+
- name: actualizar stack de docker
42+
command: "docker stack deploy -c ~/medios_bot.yml {{stack}}"
43+

docker-compose.yml

Lines changed: 35 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,42 @@
11
version: "3"
22
services:
33
bot:
4-
image: medios_bot
5-
deploy:
6-
replicas: 1
7-
ports:
8-
- "80:8000"
4+
image: numericalatina/medios_bot
5+
restart: always
6+
networks:
7+
- bot_db
8+
9+
mariadb:
10+
image: mariadb
11+
restart: always
12+
volumes:
13+
- bot_db_data:/var/lib/mysql
914
networks:
10-
- red
11-
depends_on:
12-
- db
13-
db:
14-
image: postgres
15+
- bot_db
1516
environment:
16-
POSTGRES_PASSWORD: laSextaDeclaracion
17+
MYSQL_ROOT_PASSWORD: "{{ vault_MYSQL_ROOT_PASSWORD }}"
18+
MYSQL_DATABASE: "{{ vault_MYSQL_DATABASE }}"
19+
MYSQL_USER: "{{ vault_MYSQL_USER }}"
20+
MYSQL_PASSWORD: "{{ vault_MYSQL_PASSWORD }}"
21+
22+
wordpress:
23+
image: wordpress
24+
restart: always
25+
volumes:
26+
- wp_bot_vol:/var/www/html
1727
networks:
18-
- red
28+
- bot_db
29+
environment:
30+
WORDPRESS_DB_HOST: mariadb:3306
31+
WORDPRESS_DB_NAME: "{{ vault_MYSQL_DATABASE }}"
32+
WORDPRESS_DB_USER: "{{ vault_MYSQL_USER }}"
33+
WORDPRESS_DB_PASSWORD: "{{ vault_MYSQL_PASSWORD }}"
34+
ports:
35+
- "8888:80"
36+
1937
networks:
20-
red:
38+
bot_db:
39+
40+
volumes:
41+
wp_bot_vol:
42+
bot_db_data:

group_vars/all

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
$ANSIBLE_VAULT;1.1;AES256
2+
34356263383534323061393932376562326238663665343034353566326333376166373633393330
3+
6461373462626330323635393737333335343334353365300a356431633330336133626461623835
4+
30303561663239316539623933613034336231663836646361303466313662633631633434303131
5+
6232616633396364390a333365663331623762383961373838653636313762346539316634663837
6+
34623465653364643935393133623866633963643636336163653736393439316634363732353961
7+
63343431353762616639613030613337663836346431636532646136633362383333633432323339
8+
63313465303938383333386238613034653339653466613530633034383930333134343738363264
9+
61303236356166363363313961646433323331643462663165373864613530643830376130643535
10+
64383031363933353833373061633463363236333362323233383064613335353361373234613832
11+
65323438366331396163626237303633363836356237623865373835613434333235303361383636
12+
65623363316463633562386634326433613130353065646163643132323061396237643266333062
13+
65326138613036366333383532303839613239633163306535663131313635623131313164653130
14+
3531

hosts.production

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
[digitalocean]
2+
numerica.cl
3+
4+
[digitalocean:vars]
5+
ansible_ssh_user=root

medios_libres/medios_libres/models.py

Lines changed: 138 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
from django.db import models
22

3+
# DJANGO
4+
35
class Texto(models.Model):
46
texto = models.TextField()
57

@@ -8,3 +10,139 @@ class Ubicacion(models.Model):
810
longi = models.FloatField()
911
usuario = models.CharField(max_length=50) # TODO model
1012
tiempo = models.DateTimeField(auto_now=True) # redundante?
13+
14+
# WORDPRESS unmanaged
15+
# obtained by inspectdb
16+
17+
class WpPosts(models.Model):
18+
id = models.BigAutoField(db_column='ID', primary_key=True) # Field name made lowercase.
19+
post_author = models.BigIntegerField()
20+
post_date = models.DateTimeField()
21+
post_date_gmt = models.DateTimeField()
22+
post_content = models.TextField()
23+
post_title = models.TextField()
24+
post_excerpt = models.TextField()
25+
post_status = models.CharField(max_length=20)
26+
comment_status = models.CharField(max_length=20)
27+
ping_status = models.CharField(max_length=20)
28+
post_password = models.CharField(max_length=255)
29+
post_name = models.CharField(max_length=200)
30+
to_ping = models.TextField()
31+
pinged = models.TextField()
32+
post_modified = models.DateTimeField()
33+
post_modified_gmt = models.DateTimeField()
34+
post_content_filtered = models.TextField()
35+
post_parent = models.BigIntegerField()
36+
guid = models.CharField(max_length=255)
37+
menu_order = models.IntegerField()
38+
post_type = models.CharField(max_length=20)
39+
post_mime_type = models.CharField(max_length=100)
40+
comment_count = models.BigIntegerField()
41+
42+
class Meta:
43+
managed = False
44+
db_table = 'wp_posts'
45+
46+
class WpPostmeta(models.Model):
47+
meta_id = models.BigAutoField(primary_key=True)
48+
post_id = models.BigIntegerField()
49+
meta_key = models.CharField(max_length=255, blank=True, null=True)
50+
meta_value = models.TextField(blank=True, null=True)
51+
52+
class Meta:
53+
managed = False
54+
db_table = 'wp_postmeta'
55+
56+
class WpComments(models.Model):
57+
comment_id = models.BigAutoField(db_column='comment_ID', primary_key=True) # Field name made lowercase.
58+
comment_post_id = models.BigIntegerField(db_column='comment_post_ID') # Field name made lowercase.
59+
comment_author = models.TextField()
60+
comment_author_email = models.CharField(max_length=100)
61+
comment_author_url = models.CharField(max_length=200)
62+
comment_author_ip = models.CharField(db_column='comment_author_IP', max_length=100) # Field name made lowercase.
63+
comment_date = models.DateTimeField()
64+
comment_date_gmt = models.DateTimeField()
65+
comment_content = models.TextField()
66+
comment_karma = models.IntegerField()
67+
comment_approved = models.CharField(max_length=20)
68+
comment_agent = models.CharField(max_length=255)
69+
comment_type = models.CharField(max_length=20)
70+
comment_parent = models.BigIntegerField()
71+
user_id = models.BigIntegerField()
72+
73+
class Meta:
74+
managed = False
75+
db_table = 'wp_comments'
76+
77+
class WpCommentmeta(models.Model):
78+
meta_id = models.BigAutoField(primary_key=True)
79+
comment_id = models.BigIntegerField()
80+
meta_key = models.CharField(max_length=255, blank=True, null=True)
81+
meta_value = models.TextField(blank=True, null=True)
82+
83+
class Meta:
84+
managed = False
85+
db_table = 'wp_commentmeta'
86+
87+
class WpLinks(models.Model):
88+
link_id = models.BigAutoField(primary_key=True)
89+
link_url = models.CharField(max_length=255)
90+
link_name = models.CharField(max_length=255)
91+
link_image = models.CharField(max_length=255)
92+
link_target = models.CharField(max_length=25)
93+
link_description = models.CharField(max_length=255)
94+
link_visible = models.CharField(max_length=20)
95+
link_owner = models.BigIntegerField()
96+
link_rating = models.IntegerField()
97+
link_updated = models.DateTimeField()
98+
link_rel = models.CharField(max_length=255)
99+
link_notes = models.TextField()
100+
link_rss = models.CharField(max_length=255)
101+
102+
class Meta:
103+
managed = False
104+
db_table = 'wp_links'
105+
106+
class WpTerms(models.Model):
107+
term_id = models.BigAutoField(primary_key=True)
108+
name = models.CharField(max_length=200)
109+
slug = models.CharField(max_length=200)
110+
term_group = models.BigIntegerField()
111+
112+
class Meta:
113+
managed = False
114+
db_table = 'wp_terms'
115+
116+
class WpTermTaxonomy(models.Model):
117+
term_taxonomy_id = models.BigAutoField(primary_key=True)
118+
term_id = models.BigIntegerField()
119+
taxonomy = models.CharField(max_length=32)
120+
description = models.TextField()
121+
parent = models.BigIntegerField()
122+
count = models.BigIntegerField()
123+
124+
class Meta:
125+
managed = False
126+
db_table = 'wp_term_taxonomy'
127+
unique_together = (('term_id', 'taxonomy'),)
128+
129+
class WpTermRelationships(models.Model):
130+
object_id = models.BigIntegerField(primary_key=True)
131+
term_taxonomy_id = models.BigIntegerField()
132+
term_order = models.IntegerField()
133+
134+
class Meta:
135+
managed = False
136+
db_table = 'wp_term_relationships'
137+
unique_together = (('object_id', 'term_taxonomy_id'),)
138+
139+
class WpTermmeta(models.Model):
140+
meta_id = models.BigAutoField(primary_key=True)
141+
term_id = models.BigIntegerField()
142+
meta_key = models.CharField(max_length=255, blank=True, null=True)
143+
meta_value = models.TextField(blank=True, null=True)
144+
145+
class Meta:
146+
managed = False
147+
db_table = 'wp_termmeta'
148+

medios_libres/medios_libres/settings.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@
2525
# SECURITY WARNING: don't run with debug turned on in production!
2626
DEBUG = True
2727

28-
ALLOWED_HOSTS = []
28+
ALLOWED_HOSTS = ['numerica.cl']
2929

3030

3131
# Application definition

requirements.txt

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
pyTelegramBotAPI
2-
django
3-
psycopg2
2+
django<2
3+
mysqlclient

0 commit comments

Comments
 (0)